home *** CD-ROM | disk | FTP | other *** search
/ QRZ! Ham Radio 8 / QRZ Ham Radio Callsign Database - Volume 8.iso / pc / files / p_misc / npf231b.exe / NPFPMS.DAT / NOTES.DOC < prev    next >
Text File  |  1994-10-23  |  108KB  |  2,526 lines

  1. NPFPMS  Multi-User PMS  (C) G8NPF 1994
  2.  
  3. A collection of notes about NPFPMS
  4. -------------------------------------------------------------------------------
  5.  
  6. The PMS uses the BPQ HOST mode interface, rather than the old TNC2 combios
  7. (virtual tnc) interface. The BPQ version MUST be 4.05 (or later).
  8. The old TNC2 combios emulation is no longer supported.
  9. The PMS does not require the BPQHTNC2 or INT14 drivers.
  10. (You do not need to define any COMBIOS ports in the bpqcfg.txt file)
  11.  
  12. When editing the npfpms.cfg file or any of the CONFIG or SCRIPT files, use an
  13. ASCII editor. Beware of WP programs (like WordStar?) which can leave odd
  14. formatting control codes in the text!
  15.  
  16. *NEVER* manually edit the files in the SYS sub-directory. Most are not ascii
  17. files, even if they may appear to be!  The only exception is the BBS.NAC file
  18. which you may update, provided the same layout is retained.
  19.  
  20. *NEVER* manually delete any files in the MAIL or SYS sub-directories.
  21.  
  22. Files in the SCRIPT and CONFIG sub-directories are ascii files and can be
  23. edited as required.
  24.  
  25. Do NOT set the Read-only, Hidden or System attributes on any of the files used
  26. by the PMS.
  27.  
  28. Note: The clock in the PC should be set to match the TIMESIG entry.
  29. (Times in Amateur Radio are normally in GMT)
  30.  
  31. With slower PC's (and/or hard drives), installing MSDOS's FASTOPEN in your
  32. config.sys file may speed up PMS functions which do a lot of disk searching.
  33. (Like forwarding)
  34.  
  35. The PMS can open quite a few files at times. BPQcode may also have open files,
  36. so make sure your DOS is configured with sufficient files, especially if you
  37. are running the PMS under DESQview, or you are running other programs that open
  38. lots of files.
  39.  
  40. The PMS is in full colour, but *should* be ok on a mono vdu with MDA or
  41. Hercules card.
  42.  
  43. -------------------------------------------------------------------------------
  44. After installation, the main PMS directory will contain the following files and
  45. sub-directories.
  46. PMS.BAT
  47. PMSCODE.EXE
  48. PMSCODE.DLL
  49. RENUMBER.EXE
  50. DELUSER.EXE
  51. PASSWORD.EXE
  52. PRUNIDX.EXE
  53. 7PLUS      <DIR>
  54. ARCHIVE    <DIR>
  55. CONFIG     <DIR>
  56. FILES      <DIR>
  57. FILES.ULD  <DIR>
  58. MAIL       <DIR>
  59. SCRIPT     <DIR>
  60. SYS        <DIR>
  61.  
  62. The CONFIG sub-directory may contain the following files. (Some are optional)
  63. AUTOLIST.CMD
  64. CHANGE.BBS
  65. EXTERNAL.BAT
  66. FILEDESC.TXT
  67. FWDFILE.LST
  68. HOLD.LST
  69. NPFPMS.CFG
  70. PASSWORD.FBB            Password for use with FBB systems.
  71. xxxxxx.MAT              Password matrix file(s) for NNA/NPF systems.
  72.  
  73. The SCRIPT sub-directory may contain the following files.
  74. ALLMSG.TXT
  75. FILES.TXT
  76. HELP.TXT
  77. INFO.TXT
  78. INTRO.TXT
  79. NONREG.TXT
  80. NONXMSG.TXT
  81.  
  82. The SYS sub-directory MUST contain the following files.
  83. BBS.NAC
  84. LZHRLL.COM
  85. NXTMSG.NUM
  86. SYSOP.TXT
  87.  
  88. After running for a while, the PMS may create the following files in the SYS
  89. sub-directory.
  90. %LOG.PMS
  91. ATBBS.LST
  92. AUTOLISTA.PMS
  93. AUTOLISTB.PMS
  94. BIDS.REC
  95. JALIST.LST
  96. MSGINDEX.IDX
  97. NAMELOG.SYS
  98. Some other files starting with a % may be created. Never interfere with them!
  99. Some temporary files with the extension .$$$ will also be created, and will be
  100. automatically deleted.
  101.  
  102. -------------------------------------------------------------------------------
  103. To run the PMS type:   PMS (/switch)
  104. The command line accepts the following switches:
  105.  
  106. /H  Lists the valid switches.
  107. /D  Inhibit the check for the DOS version.
  108. /P  Inhibit Printer-on-line check.
  109. /Vx Inhibit DESQview calls.
  110.  
  111. The PMS requires MSDOS 3.30 (DRDOS 5.00) or later.
  112. DESQview (if used) should be version 2 or later.
  113. You can inhibit the DOS check if you know the PMS does run under your version
  114. of DOS, but the PMS initialisation file objects.
  115. Inhibiting the DV calls may slows things down if running under DV.
  116. Inhibiting the printer check, and then printing to an off-line or non-existent
  117. printer, may well hang the system.
  118.  
  119. The system will load an existing JA list, or start a new list otherwise.
  120.  
  121. **** IMPORTANT!
  122. The very first time you run the PMS, enter your own Name/HomeBBS/QTH details
  123. (N NH NQ) and then do a B (Bye) to enter your details into the user database.
  124. *** You must do this before any other person uses the PMS ***
  125.  
  126. To close down the PMS type EXIT from the command line. You cannot close the
  127. PMS if it is connected to a user (or node), or any screen is using the editor.
  128. Disconnect all users and close all editor screens first, and then enter the
  129. EXIT command.
  130.  
  131. -------------------------------------------------------------------------------
  132. Configuration file details.
  133.  
  134. Each entry must be contained on a single logical line. If a line ends in an
  135. underscore character _ the following line will be treated as an extension of
  136. the previous line.
  137.  
  138. Most entries are optional and can be put in any order. Undefined entries will
  139. default to pre-set values. A few entries MUST be specified. These are noted in
  140. the description.  (Any text is only for example).
  141. Comments following a semicolon ; will be ignored. Multiple spaces and <Tab>
  142. characters are reduced to a single space.
  143.  
  144. To include leading spaces, multiple spaces, or a ; character, in a text entry,
  145. enclose the entry in double or single quotes.
  146. e.g. "   Text entry"     'Text   entry'   "A semicolon ; in the string"
  147.  
  148. To include quotes in the entry, enclose it with quotes of the other type.
  149. e.g.  "This is 'quotes' in a string"  or  'This is "quotes" in a string'
  150.  
  151.  
  152. ACCEPT <list of callsign's>
  153. If an accept list is specified, then only the callsign's in the list will be
  154. able to connect to the PMS. All others will be rejected.
  155. The default is no list.
  156.  
  157. ACKENABLE YES/NO
  158. Determines whether the PMS automatically generates an acknowledgement reply
  159. when the last line of an incoming message is /ACK
  160. The default is YES
  161.  
  162. ARCHIVE <drv:\path>
  163. Alternative directory path for archived messages.
  164. The default is \PMS\ARCHIVE\
  165.  
  166. ARCOMPRESSED YES/NO
  167. Download 'AutoRead' messages from FBB BBS's in compressed format, if possible.
  168. The default is YES
  169.  
  170. AUDIO ON/OFF/TIMED
  171. Determines if the system audio is set to ON, OFF or TIMED, when the PMS is
  172. first started.
  173. The default is ON
  174.  
  175. AUDIOTIMES <hh-hh>
  176. Specifies the times when system audio is allowed, when using the audio TIMED
  177. option.  Use 24hr clock format (00-23)
  178. The default is 00-23 (no restriction)
  179.  
  180. AUTOLISTTIME-A HH:MM HH:MM (xx:MM) ....
  181. A list of times for a type A AutoList/Read of mail from the local NTSBBS.
  182. See the Mail Forwarding section for more details on how to set times.
  183. The default is no list.
  184.  
  185. AUTOLISTTIME-B HH:MM HH:MM (xx:MM) ....
  186. A list of times for a type B AutoRead of mail from the local NTSBBS.
  187. See the Mail Forwarding section for more details on how to set times.
  188. The default is no list.
  189.  
  190. AUTOPROMPT-A <prompt>
  191. The prompt received from the type A NTSBBS
  192. The default is a null.
  193.  
  194. AUTOPROMPT-B <prompt>
  195. The prompt received from the type B NTSBBS
  196. The default is a null.
  197.  
  198. AUTOREADCMD V/R
  199. The read command issued by the AutoRead function for non-FBB BBS's, or when
  200. the ARCOMPRESSED option is set to NO
  201. V = Verbose read, which includes all the routing information.
  202. R = Normal read.
  203. The Default is R
  204.  
  205. AUTOROUTE-A <route>
  206. The route to your type A NTSBBS
  207. The default is to connect direct to the BBS specified by the NTSBBS entry
  208.  
  209. AUTOROUTE-B <route>
  210. The route to your type B NTSBBS
  211. The default is to connect direct to the BBS specified by the NTSBBS entry
  212.  
  213. AUTOTYPE 0-2
  214. If 0, then a normal AutoList/Read sequence, without passwords, takes place.
  215. If 1, then the PMS will, upon connecting, send SYSOP (FBB) or @ (non-FBB) to
  216.       request a password verification. For use by a remote Sysop.
  217. If 2, then the PMS will send its full [SID] on connecting for AutoList.
  218. The default is 0. (Option 2 is reserved).
  219.  
  220. BLANK <minutes>
  221. Duration in minutes before the Screen Saver blanks the screen.
  222. Set to 0 to disable the screen blanker.
  223. The default is 15 minutes.
  224.  
  225. BPQDIR <(drv:)\path>
  226. This specifies the full DOS pathway to the BPQ directory. 
  227. The BPQ directory must contain the file BPQCFG.BIN
  228. The default is \BPQ\
  229.  
  230. BTEXT <text>
  231. BPQ node beacon text. Sent at intervals via the BPQ node.
  232. The default is no text.
  233.  
  234. CHANNELS 0-14
  235. Specifies the number of user channels, from channel 0.
  236. CHANNELS 2 will give you channels 0, 1 and 2. The greater CHANNELS is set to,
  237. the slower some functions may be, and the more memory the system will require!
  238. The default is 2
  239.  
  240. DEFMASK &H0000-&H7FFF
  241. The startup value for the monitor port mask.
  242. The default is hex &H7FFF (All ports monitored for all types of frames)
  243.  
  244. DELETEBULLETIN <number of days>
  245. This is the number of days after which a bulletin is automatically deleted. A
  246. setting of 0 disables the function. Deleted messages cannot be recovered.
  247. The default is 30 (approx. one month). Valid range is 0 to 265
  248.  
  249. DELETEPERSONAL <number of days>
  250. This is the number of days after which a personal message is automatically
  251. deleted. A setting of 0 disables the function. Deleted messages cannot be
  252. recovered.
  253. The default is 60 (approx. two months). Valid range is 0 to 265
  254.  
  255. ERRORCOLOUR <colour>
  256. Colour of text for error messages.
  257. The default is 12  (Light red)
  258.  
  259. EXT <string>
  260. The PMS SID banner.
  261. The default is all options valid [ABFLHMV$]
  262.  
  263. FILESDIR <drv:\path>
  264. Directory path for an additional files area.
  265. You may use up to 9 FILESDIR commands.
  266.  
  267. FWDTIME HH:MM HH:MM ....
  268. A list of times when the PMS will do automatic mail forwarding.
  269. See the 'Setting of times' section for more details on how to set times.
  270. The default is no list.
  271.  
  272. FWDLEVEL 1/2
  273. If 1, then the PMS will only forward messages addressed FROM the PMS SysOp.
  274. If 2, then the PMS will forward messages from any callsign.
  275. The default is 1
  276.  
  277. FWDONTO YES/NO
  278. If YES, then forward messages on the TO field, as well as the @BBS field.
  279. If NO, then only forward messages on the @BBS field.
  280. The default is NO
  281.  
  282. HOSTPORT <host port number>
  283. This is the BPQ base host port to use for the PMS. Host ports can be from
  284. 1 to 64. If you specify base HOSTPORT 30, and CHANNELS 3 then the PMS will use
  285. host ports 30,31,32 and 33 for channels 0 to 3. The base host port specified
  286. must be less than (64-CHANNELS)
  287. The default is 30
  288.  
  289. INACTIVETIMEOUT <time in seconds>
  290. This is the maximum time the PMS will wait for ANY input while connected to a
  291. user.  This will stop the PMS hanging if a user disappears without
  292. disconnecting.  1200 gives 20 minutes. Set to 0 to disable the timer.
  293. The default is 1200. Valid range is 60 to 3599
  294.  
  295. INSERTCOLOUR
  296. The default is 7 (white)
  297.  
  298. JALISTSIZE <size>
  299. The maximum number of entries allowed in the JA list.
  300. The default is 50. Valid range is 10 to 1000
  301.  
  302. KEEPBBSMSG YES/NO
  303. If YES then incomplete un-compressed messages from BBS stations will be kept.
  304. If NO they will be deleted. (Incomplete compressed messages are always deleted)
  305. The default is NO
  306.  
  307. KEEPFILE YES/NO
  308. If YES then incomplete uploaded ASCII files will be kept. If NO they will be
  309. deleted. (Incomplete binary files, uploaded by users, are always deleted)
  310. The default is NO
  311.  
  312. KEEPMSG YES/NO
  313. If YES then incomplete un-compressed messages from normal users will be kept.
  314. If NO they will be deleted. (Incomplete compressed messages are always deleted)
  315. The default is YES
  316.  
  317. KEYBOARDCOLOUR <colour>
  318. The Default is 7 (white)
  319.  
  320. KILLBULLETIN <number of days>
  321. This is the number of days after which a bulletin is automatically killed. A
  322. setting of 0 disables the function.
  323. The default is 15. Valid range is 0 to 265
  324.  
  325. KILLONFWD YES/NO
  326. If set to YES, then mail will be automatically killed after being forwarded.
  327. The default is NO
  328.  
  329. KILLONREAD YES/NO
  330. If set to YES, then you are offered the option to kill or delete the message
  331. you have just read.  Only available to the SysOp (or a remote SysOp).
  332. The default is NO
  333.  
  334. KILLPERSONAL <number of days>
  335. This is the number of days after which a personal message is automatically
  336. killed. A setting of 0 disables the function.
  337. The default is 30. Valid range is 0 to 265
  338.  
  339. LOCALINCOLOUR <colour>
  340. Colour of text typed at the local keyboard.
  341. The default is 11  (Light cyan)
  342.  
  343. LOCALOUTCOLOUR <colour>
  344. Colour of text in response to a local command.
  345. The default is 3  (Cyan)
  346.  
  347. LOGOPTION <value>
  348. Controls which events are recorded in the log file. The value is a bit field
  349. where each bit set enables a particular type of log entry.
  350. Bit:
  351.   0   (System reserved).
  352.   1   Auto function connections.
  353.   2   Incoming user connections.
  354.   3   Disconnections.
  355.   4   Auto function failures.
  356.   5   User time-outs.
  357.   6
  358.   7
  359.   8   Attempted access of locked files.
  360.   9   Protocol errors (forwarding).
  361.  10   User matrix errors.
  362.  11   Forwarding failures.
  363.  12   File uploaded.
  364.  13   File downloaded.
  365.  14
  366.  15   System errors. (Always set on).
  367. The default is &HFFFF  (All events logged)
  368.  
  369. MAILTIME MM MM
  370. A list of minutes past the hour when periodic MESSAGE FOR beacons will be
  371. sent. (Once per hour is normally more than enough!)
  372. The default is no list.
  373.  
  374. MAXCON <number>
  375. Number of incoming connections allowed per user. A MAXCON of 1 is recommended!
  376. This has no effect on the number of outgoing connections from the PMS.
  377. The default is 1. Valid range is 1 to 5
  378.  
  379. MAXFRAME <number>
  380. The maximum number of outstanding frames allowed.
  381. If a valid maxframe can be read from the NODE port during transmission, then
  382. the value read over-rides this setting.
  383. The default is 2. Valid range is 1 to 10
  384.  
  385. MAXLIST <number>
  386. The maximum number of messages that can be listed by the basic List commands.
  387. Set to 0 to disable the restriction.
  388. The default is 50
  389.  
  390. NIC <address>
  391. Your international address for use in mail headers.
  392. This must be correct or your return mail might get lost!
  393. e.g. G8NPF.GB7ESX.#31.GBR.EU
  394. The default is no address.
  395.  
  396. NODECONN <text>
  397. Node reply text for a successful connection.
  398. The default is none.
  399.  
  400. NODEFAIL <text>
  401. Node reply text for a failed connection.
  402. The default is none.
  403.  
  404. NONXPROMPT <text>
  405. This is the extra prompt given to non-expert users.
  406. The default is no extra prompt.
  407.  
  408. NTSBBS <callsign>
  409. This is the callsign of your local (GB7) BBS    (e.g. GB7ESX)
  410. The default is no callsign set.
  411.  
  412. OVERWRITECOLOUR <colour>
  413. The Default is 4
  414.  
  415. PACLEN <number>
  416. The default transmitted packet length. If not specified then a default value
  417. is read from the BPQCFG.BIN file. If a valid paclen can be read from the NODE
  418. port during transmission, then the value read over-rides this setting.
  419. The default is 128
  420.  
  421. PAGETIMEOUT <seconds>
  422. Sets the time delay before a 'SysOp not available' reply is given to a Page (T)
  423. command.
  424. The default is 20 seconds
  425.  
  426. PORTnCOLOUR <colour number>
  427. Colour of text from BPQ radio port n. (1 to 16)
  428. The default colour is 7 (White) for all ports.
  429.  
  430. PRINTER <printer port>
  431. Sets the I/O port used for the printer. (PRN: LPT1/2/3: COM1/2:)
  432. The default is LPT1:
  433.  
  434. PRINTERFILTER <start-end>
  435. PRINTERFILTER <n1,n2,n...>
  436. Range of ascii codes, or list of individual ascii codes to be excluded from the
  437. printer. Some odd controls codes can confuse some printers.
  438. The default is no codes excluded.
  439.  
  440. PURGETIME HH:MM
  441. A list of times for the PMS to do its housekeeping. You can enter several times
  442. in the HH:MM format, but two should be enough. Pick quite times as, if the PMS
  443. is very busy, the purge may not take place. Server commands (REQDIR etc.) are
  444. also processed at this time. You must put at least one entry in the list. See
  445. the 'Setting of times' section for more details on how to set times.
  446. The default is no list.
  447.  
  448. REGISTRATION <number>
  449. Your PMS registration number. For registered users only.
  450. The default is 'unregistered'.
  451.  
  452. REJECT <list of invalid calls>
  453. A station attempting to log-on using a callsign in this list will be rejected.
  454. The list should include invalid calls like  NOCALL PK232  etc.
  455. This should not be used to prevent a valid callsign from gaining entry.
  456. (Undesirables can be locked out by removing their C flag)
  457. The default is no list.
  458.  
  459. REVIEWSIZE <number of lines>
  460. Sets the number of lines you can scroll back in review mode.
  461. The default is 50. The valid range is 30 to 1000
  462.  
  463. ROUTEID <Text>
  464. Optional info text to be added to R: routing line.  (Max. 26 characters)
  465. Don't include the square brackets or the PMS type/version. They are added
  466. automatically.
  467. The default is no text. 
  468.  
  469. SAVEDIR <drv\directory>
  470. Specifies an alternative drive\directory to save deleted messages in.
  471. The drive and directory must exist.
  472. The default is \PMS\SAVED\
  473.  
  474. SAVETYPE <BPZUA>
  475. Determines the type of messages copied to the SAVEDIR\ directory.
  476. Types are:  B Bulletin   P Personal   Z autoread   U user   A ack
  477. The default is NONE
  478.  
  479. SCREENFILTER <start-end>
  480. SCREENFILTER <n1,n2,n...>
  481. Range of ascii codes, or list of individual ascii codes to be excluded from the
  482. screen display and keyboard input, in addition to the 'default' codes.
  483. The default is no extra codes excluded.
  484.  
  485. SECURITY <character(s)>
  486. Extra text required if the station that's connected is using the same callsign
  487. as the PMS.
  488. The default is two dots ..
  489.  
  490. SESSIONTIMEOUT <seconds>
  491. This is the maximum time a user can stay connected before the PMS automatically
  492. disconnects. 3599 will give 1 hour (almost). Set to 0 to disable the timer.
  493. The default is 3500. The valid range is 300 to 3599
  494.  
  495. SYSTEMCOLOUR <colour>
  496. Colour of system generated text.
  497. The default is 2  (Green)
  498.  
  499. TEXTBUFFERSIZE <number of lines>
  500. Sets the maximum number of lines available to the system editor.
  501. Files will be truncated to fit the the limit.
  502. The default is 500 lines. The valid range is 50 to 5000
  503.  
  504. THIRDPARTY 0-2
  505. If 0, then only the PMS SysOp can send 3rd party messages.
  506. If 1, then stations with the S flag set will be able to send 3rd party messages
  507. If 2, then 3rd party messages will be accepted from ANY station. (!)
  508. The default is 1
  509.  
  510. TIMESIG <gmt/utc/bst/...>
  511. The PMS time signature.  This should match the time set in the computer.
  512. The default is gmt
  513.  
  514. TIMEZONE <zone>
  515. The time zone id used in the PMS mail header.
  516. The default is z
  517.  
  518. UPCALL (bbscall>uicall)
  519. The callsigns to watch for in FBB BBS Unproto broadcasts. i.e. GB7HSN>FBB
  520. The default is no callsigns set.
  521.  
  522. UPLISTSIZE <size>
  523. The maximum size of the Unproto list. This list is held in memory, (with a
  524. copy on the hard disk) so the size can be important.
  525. The default is 50 lines.  The valid range is 20 to 500
  526.  
  527. UPPORT <port number>
  528. The BPQnode *RADIO* port for Unproto list update requests to the FBB BBS.
  529. This should normally be the port that you receive FBB Unproto broadcasts on.
  530. The default is 0  (invalid port)
  531.  
  532. UPREQUEST YES/NO
  533. Enable FBB unproto update requests from the PMS.
  534. The default is NO
  535.  
  536. UPTIMER <seconds>
  537. Time delay, in seconds, before requesting FBB unproto updates. 
  538. The default is 150.  The valid range is 60 to 1000
  539.  
  540. UPLOAD <drv:\path>
  541. Alternative directory path for the user upload files area. Should be different
  542. to any download files area.
  543. The default is \PMS\FILES.ULD\
  544.  
  545. USENIC 0-3
  546. Determines if the PMS uses the full hierarchical BBS address when doing
  547. compressed forwarding to BBS's with the 'H' flag in their SID banner.
  548. i.e. G8NPF@GB7ESX or G8NPF@GB7ESX.#31.GBR.EU
  549. 0  Don't use full address (default).
  550. 1  Use full address for NNA forwarding.
  551. 2  Use full address for FBB forwarding.
  552. 3  Use full address for both NNA and FBB forwarding.
  553. The default is 0
  554.  
  555. USEWP 0-15
  556. 1  Search WP file to see if @BBS matches records. Warn user if different.
  557. 2  Use WP entry if a message is entered with no @BBS field.
  558. 4  Update the WP file with Home BBS's extracted from AutoRead messages.
  559. 8  Allow entries from message headers to update direct user entries(!)
  560. Values may be combined as required.  i.e. USEWP 7  (options 1, 2 and 4)
  561.  
  562. Example values for USEWP:
  563. 0    The White Pages file is kept updated, but not used.
  564. 1    The WP file is searched when a message is entered, to warn the user if the
  565.      @BBS field used differs from the one in the WP file.
  566. 2    The WP entry will be used if a message is entered with no @BBS field
  567. 3    Both options 1 & 2
  568. 4-7  As 0-3, but also the Home BBS's of extracted from messages read by the
  569.      AutoRead function are added to the WP file. Setting to 4+ will result in
  570.      the WP file growing much faster, but it will then record the Home BBS's of
  571.      all stations whose messages pass through the PMS. Otherwise it will only
  572.      record WP info on stations who send messages specifically to the PMS.
  573. 8-15 As 0-7, but will allow Home BBS's read from message headers to update
  574.      (overwrite) direct user entries.
  575. The default is a value of 3 (options 1 and 2)
  576.  
  577. TEMPDRIVE drv:(\path\)
  578. Specifies an alternative hard disk or virtual (ram) disk for temporary files.
  579. A ram disk must already exist. The PMS cannot create it!
  580. The default is to use the PMS\SYS directory on the current drive.
  581.  
  582. VDU MONO/COLOUR/MONOVGA
  583. Set to MONO if you are using a MDA or Hercules card.
  584. Set to COLOUR if you are using a CGA/EGA/VGA card with colour monitor.
  585. Set to MONOVGA if you are using a CGA/EGA/VGA card with mono monitor.
  586. The default is COLOUR
  587.  
  588. WIDTH <width>
  589. The maximum line length (screen width) in the editor.
  590. The default is 80 (full screen)
  591.  
  592. YAPPCR YES/NO
  593. If NO, then standard Yapp protocol is used.
  594. If YES, then YappC checksum (FBB) and crash recovery protocols are enabled.
  595. The default is YES
  596.  
  597. ******
  598. (Command list terminator. Must be included).
  599.  
  600. -------------------------------
  601.  
  602. Multi-line commands. These commands may use more than one line. Text may
  603. include $x variables. The command separator must be at least 5 dashes (-----)
  604. Don't include any text on the command line.
  605. The defaults are pre-set messages.
  606.  
  607. BBSLOGON
  608. <Text>
  609. The text sent to BBS stations (those with user BBS flag set) at log-on.
  610.  
  611. BEACONTEXT
  612. <Text>
  613. The text used in the PMS's MAIL beacons.
  614.  
  615. BYE
  616. <Text>
  617. The text sent in response to a B (Bye) or Q (Quit to node) command.
  618.  
  619. GREET
  620. <Text>
  621. Additional text sent to users without the SHORT flag set.
  622.  
  623. MESSAGEFOOTER
  624. <Text>
  625. Optional text included at the end of all messages originated at the keyboard.
  626. The default is no footer.
  627.  
  628. MESSAGEHEADER
  629. <Text>
  630. Optional text included at the start of all messages originated at the keyboard.
  631. The default is no header.
  632.  
  633. PAGENO
  634. <Text>
  635. The text sent for a negative response to a SysOp Page. (Page-Down or Time-out)
  636.  
  637. PAGEYES
  638. <Text>
  639. The text sent for a positive response to a SysOp Page. (Page-Up)
  640.  
  641. PROMPT
  642. <Text>
  643. The text sent as the PMS prompt.
  644.  
  645. QUOTEHEADER
  646. <Text>
  647. Optional header text to a quoted message.
  648. The default is no header.
  649.  
  650. WELCOME
  651. <Text>
  652. Text sent to normal users at log-on.
  653.  
  654. ******
  655. (Command list terminator. Must be included).
  656.  
  657.  
  658. See the sample npfpms.cfg file for details.
  659.  
  660. -------------------------------------------------------------------------------
  661. Script files.
  662.  
  663. The first 4 files are sent to users at log-on. They will NOT sent to users
  664. flagged as BBS stations in the user file.
  665.  
  666. INTRO.TXT    is sent to all users at log-on
  667. ALLMSG.TXT   is sent to users without the SHORT flag set.
  668. NONXMSG.TXT  is sent to non-expert users.
  669. NONREG.TXT   is sent to a user who has used the PMS before, but has not
  670.              registered by entering their Name, QTH and HomeBBS details.
  671.  
  672. HELP.TXT     is sent in response to the H (Help) command.
  673. INFO.TXT     is sent in response to the I (Info) command.
  674. FILES.TXT    is sent after a W (directory listing) command.
  675.  
  676. You may edit these text file with any ASCII editor. They can contain anything
  677. you think appropriate.
  678.  
  679. -------------------------------------------------------------------------------
  680. WP (White pages) file.
  681.  
  682. The PMS maintains a White Pages file of stations home BBS's
  683. The use of this file depends on the setting of USEWP in the npfpms.cfg file.
  684.  
  685. The file will be updated when a user's Home BBS is entered with the NH command,
  686. and may be updated when Home BBS's are read from message headers (R: lines)
  687. in messages sent or forwarded to the PMS. Direct user entries will not be
  688. altered by information read from message headers, unless bit 4 of USEWP is set.
  689.  
  690. The WP entry is also updated if the SysOp changes the users home BBS entry
  691. in the user database file, with the EU xxxxx command.
  692. Note. The reverse is not true. The user database is not updated when the WP
  693. file is updated. It is best to use EU xxxxx to change a registered users home
  694. BBS, so that the WP file stays in sync with the user database. Only use the
  695. EW xxxx@xxxx command to update the WP file for un-registered callsigns.
  696. (A registered user/callsign is one who has an entry in the user database. Use
  697. the F (Find) command to see if a callsign is registered).
  698.  
  699. When a user enters a message, the PMS will look up the home BBS of the station
  700. in the TO field. If an entry is found, and the user did not specify any @BBS,
  701. then the PMS may add the BBS found in the WP file. If the user gave a @BBS
  702. that is different to the @BBS in the WP file, the PMS may warn the user that
  703. the @BBS they just entered may be incorrect.
  704. e.g.
  705. If G9AAA is in the WP file as having a home BBS of GB7ESX.#31.GBR.EU then,
  706.  SP G9AAA    will be translated to:  SP G9AAA @GB7ESX.#31.GBR.EU
  707.  SP G9AAA @GB7NNA will warn the user that the @BBS used may be incorrect.
  708.  
  709. You may override the WP entry by using the following options: 
  710.  SP G9AAA@   will always be translated to:  SP G9AAA @G9AAA
  711.  SP G9AAA@*  will always be translated to:  SP G9AAA         (local message)
  712.  
  713.  
  714. ------------------------------------------------------------------------------
  715. The SU command.   Only available to SysOp.
  716.  
  717. To leave a message to all users use:  SU ALL   (Syntax as in the SP command).
  718. The message is posted in the usual way. The message will be flagged as an
  719. unread personal message to all users. The user List and Read commands will
  720. treat the message as if it was an unread personal message.  The user cannot
  721. kill the message. To prevent it being offered again, the user should use a List
  722. command after reading it.
  723.  
  724. ------------------------------------------------------------------------------
  725. Carbon Copy (CC) messages.
  726.  
  727. Multiple personal messages to all callsign's in a group.
  728. This type of message may be sent by any user whose S flag is set if THIRDPARTY
  729. is set to 1, or by anyone if THIRDPARTY = 2
  730. The syntax is:  SP <groupname> (@BBS)
  731.  
  732. Note: It must be SP and not SB. A type SB will not be copied.
  733.  
  734. To create a Carbon Copy group you create a file, which must reside in the
  735. CONFIG directory, with the group name followed by a .cc extension.
  736. i.e.  EPG.CC
  737. The file should contain the callsign(s) of users allowed to send messages to
  738. the group, plus the callsign's and home BBS's of all the users to whom the
  739. message will copied. The list may also contain the names of other CC lists.
  740.  
  741. e.g. Contents of file EPG.CC
  742.  
  743. G9XXX               ;List of callsign's allowed to send messages to the group.
  744. G9YYY
  745. G9ZZZ
  746. ******              ;Separator. Must be at least five stars.
  747. G9AAA @ GB7ESX      ;List of recipients.
  748. G9BBB @ GB7NAA
  749. G9CCC
  750. G9DDD @ GB7ESX
  751. G9EEE @ GB7ESX
  752. GROUP2              ;The name of another CC list.
  753.  
  754. Stations G9XXX, G9YYY and G9ZZZ can send messages to the EPG group by entering
  755. SP EPG   The message is sent in the normal way. When the message is finished,
  756. multiple messages are created from the original message. The station sending
  757. the message is informed the CC messages are being created (unless that station
  758. is a BBS station).
  759.  
  760. If you often need to send several copies of the same message to another BBS it
  761. might make sense to ask the other BBS to create a Carbon Copy file containing a
  762. list of the users you wish to send messages to on his BBS. Then only one copy
  763. of the message would need to be sent to the other BBS.
  764. For example, with the EPG group, if GB7ESX had a CC file for EPG group members
  765. called EPGMEM on his BBS, then the local EPG.CC file could read:
  766.  
  767. G9XXX
  768. G9YYY
  769. G9ZZZ
  770. ******
  771. EPGMEM @ GB7ESX
  772. G9BBB @ GB7NAA
  773. G9CCC
  774.  
  775. So only one message would be sent to GB7ESX instead of three. The result would
  776. be the same as sending three individual messages to GB7ESX. Of course the above
  777. would only work if GB7ESX was set up to allow this!
  778.  
  779. The SysOp can always send a message to any CC group even if his callsign in not
  780. in the CC list. You may create as many CC groups as required.
  781. Make sure the names are unique and are not the same as commonly used BBS TO
  782. fields. (Like ALL SYSOP HELP etc.) and are no more that 6 characters long.
  783. After the message is copied to all the callsign's in the CC list the original
  784. message is killed. The copies will be automatically marked for forwarding, if
  785. appropriate.
  786.  
  787.  
  788. ------------------------------------------------------------------------------
  789. Command history buffer.
  790.  
  791. Previous keyboard typed commands are saved in a 15 line cyclic buffer.
  792. Use up arrow and down arrow to cycle through the buffer.
  793.  
  794. -------------------------------------------------------------------------------
  795. Input line editing.
  796.  
  797. The cursor can be moved with the <arrow>, <Home>, <End> and <Ctrl arrow> keys
  798. The insert key will toggle insert mode on and off. The letter I shows in the
  799. status line when insert is on.  <Ctrl Y> or <Esc> will cancel the entire line.
  800. The edit cursor will show as inverted flashing text. The normal cursor shows
  801. as an underscore.
  802.  
  803. ------------------------------------------------------------------------------
  804. Listing pause option.
  805.  
  806. Assuming ListPause is set to on (P ON) for the user or SysOp....
  807. If a user is connected, then listings will pause approximately every 15 lines
  808. and the user is asked:  -- More Y/n >
  809. When the SysOp is using the local keyboard, listings will pause at
  810. approximately one pagefull. The actual number of lines displayed per page
  811. depends on the screen mode.
  812.  
  813. ------------------------------------------------------------------------------
  814. JA command.
  815.  
  816. The JA command can accept 3 parameters (in any order).
  817. 1. The number of entries to search. (Defaults to 12)
  818. 2. The callsign/alias to search for.  * = wildcard.
  819. 3. The BPQ port n, as Pn
  820. e.g.
  821.    JA            List the last 12 entries
  822.    JA 25         List the last 25 entries
  823.    JA G9ABC      List all entries for G9ABC
  824.    JA G9ABC-1    List all entries for G9ABC-1
  825.    JA GB7E*      List all entries for GB7E...
  826.    JA 30 P1      List the 30 most recent entries on port 1
  827.    JA G9ABC P2   List all entries for G9ABC on port 2 only
  828.    JA P1         List all entries on port 1
  829.  
  830. -------------------------------------------------------------------------------
  831. PMS status lines.
  832.  
  833. The top status line indicates:
  834. Session xx:xx    The session timer.
  835. Wait    xx:xx    The inactivity timer.
  836.  
  837. The second status line indicates:
  838. Cnn              The pms channel number.
  839. Hnn              The BPQ host port number.
  840.  
  841. Ch nnnn..        Channel activity indicators.
  842.  
  843. nnnn             Internal status indicator.
  844. UP               Indicates the PMS is able to request FBB unproto updates.
  845.  
  846. U=nn             The number of unacknowledged packets pending.
  847. Q=nn             The number of packets queued for receive.
  848. B=nnn            The number of buffers left in the BPQ node.
  849.  
  850.  
  851. The lower status line of the screen display indicates:
  852. ISCA        Insert/Shift/Alt/Ctrl key status.
  853. ------      The callsign of the station connected to this channel.
  854. Status      The current mode of operation.
  855. Serv        Upload/Download file servers enabled/disabled.
  856. Busy        The busy status of the PMS channel and/or BPQ host port.
  857. Capt        Receive capture file (to disk) active.
  858. Mon         The monitor status of the BPQ host port.
  859. Print       The printer status.
  860. M:nnnn      Monitor port mask (in hex).
  861. :<callsign> Selective monitor callsign
  862.  
  863. -------------------------------------------------------------------------------
  864. System errors.
  865.  
  866. The PMS will attempt to recover from some system errors.
  867. If possible, it will disconnect any users, close down, and then re-boot the PMS
  868. code. Depending on what had gone wrong, this may or may not work, but if it
  869. fails, nothing is lost by trying!
  870.  
  871. -------------------------------------------------------------------------------
  872. User sub-directories.
  873.  
  874. The SysOp can set up user sub-directories in the FILES directory.
  875. The directory format is:  G9ABC.USR   (The extension must be .USR)
  876. Only a user with a matching callsign will have access to the files in a .USR
  877. sub-directory. You may have as many .USR sub-directories as you wish.
  878.  
  879. -------------------------------------------------------------------------------
  880. Time-outs.
  881.  
  882. The session time-out (Session) will disconnect a user after the time specified
  883. by the SESSIONTIMEOUT entry has expired.
  884.  
  885. The inactivity time-out (Wait) will disconnect a user after the time specified
  886. by the INACTIVETIMEOUT entry has expired without ANY input to the PMS.
  887.  
  888. If a user times out during a file upload/download the time-out is held until
  889. the file transfer is completed. The time-out then takes effect.
  890.  
  891. The session and inactivity time-outs are suspended during CHAT sessions and
  892. when in TERMINAL mode, and also when the station connected is logged in with
  893. SysOp status.
  894.  
  895. (Remember the time-out counters can be manually re-set with the F7 and Shift/F7
  896. function keys)
  897.  
  898. -------------------------------------------------------------------------------
  899. Setting of times.  (For forwarding, AutoList etc.)
  900.  
  901. The list should be in the form of HH:MM HH:MM or xx.MM
  902. Times can also have a 'days of the week' parameter.
  903. Those times will only be used if the current day is included in the parameter.
  904. This can be used to stop forwarding on busy days (i.e. weekends).
  905.  
  906. e.g.   FWDTIME 10:22/145  05:15/23456  16:45
  907.    The 10:22 time will only operate on days 1,4 and 5
  908.    The 05:15 time will only operate on days 2,3,4,5,6  (i.e. Not Sat or Sun)
  909.    The 16:45 time will operate on any day.
  910.  
  911. The form xx:MM is for MM minutes past the hour, every hour.
  912. e.g.   FWDTIME xx:25
  913.    Will forward at 25 mins past the hour, every hour.
  914.      
  915.        FWDTIME xx:45/23456
  916.    Will forward at 25 mins past the hour, every hour, but only Mon-Fri.
  917.  
  918. Specific times, and mins past the hour may be combined.
  919.        FWDTIME xx:45/23456 01:35/17
  920.    Will forward at 45 mins past the hour Mon-Fri and at 01:35 on Sat and Sun.
  921.      
  922. (Day 1 is Sunday, Day 7 is Saturday)
  923.  
  924. Do not set a time to exactly on the hour as that's when the PMS saves its
  925. data cache to disk, and runs its external batch file.
  926.  
  927. -------------------------------------------------------------------------------
  928. Syntax of connect paths for Forwarding, AutoList etc.
  929.  
  930. The connect path commands consist of a list of commands & nodes to connect
  931. through, ending in the callsign of the station you wish to connect to,
  932. separated by colons.    i.e.   C G8NPF-1:C G1NNB:C GB7NNA
  933.  
  934. You can force a BPQ switch to connect on a specific port by using the nodes
  935. alias with a dummy SSID, rather than its callsign, and prefixing the BPQ port
  936. number to the alias.
  937. i.e.   instead of using   C G8NPF-1:C G1NNB:C GB7NNA
  938.        use                C G8NPF-1:C 2 ESX-2:C GB7NNA
  939. This will connect normally to node G8NPF-1 first, and then try to connect via
  940. G8NPF-1's port number 2 to G1NNB's node alias ESX, and then to GB7ESX
  941. Forcing a connect on a specific BPQ port only works if you use a node alias
  942. with a dummy SSID number.
  943.  
  944. Apart from the above use, it is best to use a nodes real callsign, rather than
  945. its alias, when setting up connect paths.        
  946.  
  947. The connect command is normally C but can also be X if you are
  948. cross-connecting via a KA node. If the connect command is omitted, the a C is
  949. assumed.
  950. i.e.    C G8NPF-1:C G1NNB:C GB7NNA   (Normal connect)
  951.         G8NPF-1:G1NNB:GB7NNA         (Same as above)
  952.         C KEPAC3:X GB7DUG            (Cross connect via KA node KEPAC3)
  953.  
  954. -------------------------------------------------------------------------------
  955. Automatic Forwarding protocol.
  956.  
  957. When setting up your FWDFILE.LST the LAST entry *MUST* be your local NTSBBS
  958.  
  959. When the PMS starts a forwarding session it will scan the FWDFILE.LST file and
  960. forward any messages it finds for stations included in the list.
  961. When it gets to the NTSBBS entry, any messages (with an @BBS field) for
  962. stations NOT in the FWDFILE.LST file will be sent to the NTSBBS.
  963.  
  964. Messages with @BBS fields unknown to the PMS (like @EU @WWW @WA7XYZ) will
  965. always be sent to the NTSBBS.
  966.  
  967. If you add the parameter /R to a stations entry in the forwarding file, then
  968. the PMS will always attempt to connect to that station, to enable reverse
  969. forwarding, even if the PMS does not have any messages to forward to that
  970. station.
  971.  
  972. The PMS can forward to another system (TCP/IP system?), which uses the same
  973. BASE callsign as the PMS, just with a different SSID.
  974. Just add a normal entry to the forwarding file (fwdlist.lst) like:
  975.  C (port) (node:)G8NPF-5
  976. Then post the messages to be forwarded like:  SP G9ABC@G8NPF.ampr.org (or SB..)
  977. The .ampr.org extension prevents the PMS from stripping the @BBS field, and it
  978. will forward the messages to the other system.
  979.  
  980. Note: Whilst its ok to modify existing entries in the fwdlist.lst file while
  981. the PMS is running, if you add a new entry you should re-start the PMS so that
  982. it will re-scan the list.
  983.  
  984.  
  985. ------------------------------------------------------------------------------
  986. BBS/PMS SID letters.
  987.  
  988. When the PMS connects to a BBS for forwarding it checks the SID of the BBS.
  989. Typically, the BBS SID may be something like  [NNA-2.02-BFHLM$]
  990.                                           or  [FBB-1.00-ABFHM$]
  991. The PMS will support the use of BID's for bulletins if the BBS has included
  992. the $ character in its SID. (All known software does).
  993. It will also use use MID's for personal messages if the BBS has included a M
  994. in its SID. Note, if the SID includes the letter L, then the letter M is
  995. assumed, even if its not actually there.
  996.  
  997. The letter A indicate the PMS/BBS can support FBB's ACK: type messages.
  998. The letter V indicate the PMS/BBS can support NNA type password verification.
  999. The letter F indicate the PMS/BBS can support FBB's bulk ascii forwarding.
  1000. The letter B indicate the PMS/BBS can support FBB's bulk compressed forwarding.
  1001. If you include the letter B you MUST also include the letter F
  1002.  
  1003. The letter L indicates the PMS/BBS supports NNA's bulk compressed forwarding.
  1004. The letter L over-rides BF. If both PMS & BBS have the letters BFL in their
  1005. SID's then NNA bulk forwarding will be used in preference to FBB forwarding.
  1006.  
  1007. If both PMS & BBS included a H in their SID, then the PMS will use the full
  1008. address of a station, if known.  (e.g. G8NPF@GB7ESX.#31.GBR.EU)
  1009. Normally it is not necessary (or desirable?) for the PMS do do this, as routing
  1010. is best left to the BBS.
  1011.  
  1012. If your current version of the PMS SID includes the letter P then it MUST be
  1013. removed as the old style NNA compression is no longer supported by the PMS
  1014. (or by NNA!)
  1015.  
  1016. The $ should be the last letter, to retain compatibility with early MBL/RLI
  1017. systems.
  1018.  
  1019. The PMS SID should normally be  ABFLMHV$
  1020.  
  1021. ------------------------------------------------------------------------------
  1022. Forwarding and the optional parameters  > < @ & $
  1023.  
  1024. >callsign   All messages addressed TO the specified callsign
  1025. <callsign   All messages addressed FROM the specified callsign
  1026. @bbs        All messages addressed @ the specified BBS
  1027. &####       a specific message number
  1028. $           All non-local messages
  1029.  
  1030. Normally, only messages with an @BBS field that matches the callsign of the
  1031. station being forwarded to, will be forwarded to that station.
  1032. i.e. only messages addressed  xxxx@G9ABC  would be forwarded to G9ABC.
  1033. You can force the PMS to forward other message groups by using the parameters
  1034. listed above.
  1035.  
  1036. When using the manual forwarding command FD (or poll command PL):
  1037. FD G9ABC-3 >WNOS &1234
  1038. will forward to G9ABC all messages addressed @G9ABC as normal, plus any
  1039. messages addressed to WNOS, and the specific message numbered 1234 regardless
  1040. of how it is addressed.
  1041.  
  1042. The same format can also be used in the automatic forwarding file FWDLIST.LST
  1043. to always include certain groups of messages in a forwarding session.
  1044. e.g.
  1045. C G8NPF-1:C G9ABC-3 >DEBATE
  1046.   will always forward messages addressed to DEBATE to station G9ABC-3 as well
  1047.   as any normal messages addressed @G9ABC
  1048. C GB7xxx $
  1049.   will forward ALL non-local messages to GB7xxx (Similar to the way messages
  1050.   are forwarded to your usual NTSBBS)
  1051.  
  1052. Note:
  1053. Personal messages (PW) can only be forwarded once, so if you re-direct a
  1054. personal message to another station its status will become PF, and so it will
  1055. not be forwarded to the addressee as well. (Unless you use the MM command to
  1056. change its status back to PW)
  1057. Bulletins (B$) do not get their status changed after forwarding, so they can be
  1058. forwarded to more than one station. 
  1059.  
  1060. -------------------------------------------------------------------------------
  1061. Automatic password exchange with the SID V option. (NNABBS)
  1062.  
  1063. If both your PMS, and the station you are forwarding to, have the automatic
  1064. password verification option set (letter V in the SID) then the system will
  1065. insist on a password exchange. If either station does not have the correct
  1066. password matrix, the system will disconnect.
  1067.  
  1068.  
  1069. -------------------------------------------------------------------------------
  1070. -------------------------------------------------------------------------------
  1071. Special control key combinations.
  1072.  
  1073. The <Ctrl><Left-Shift> key combination.
  1074. Holding down these keys will:
  1075. 1. Inhibit the MAIL beacon after a user disconnects, or whenever the PMS is
  1076.    about to send a MAIL beacon.
  1077. 2. Terminate a FORWARD, POLL or AUTOLIST session at the end of the current
  1078.    connection.
  1079. 3. Will abort a users listing as if the user had sent an abort (A) command.
  1080. 4. Will prevent the PMS from re-booting after closing down with an error
  1081.    condition.
  1082.  
  1083.  
  1084. The <Alt><Left-Shift> key combination.    (Similar to F12 key)
  1085. Pressing these keys will switch the PMS display to the next channel up.
  1086.  
  1087. The <Alt><Right-Shift> key combination.   (Similar to F11 key)
  1088. Pressing these keys will switch the PMS display to the next channel down.
  1089.  
  1090. The <Ctrl><Right-Shift> key combination.
  1091. Holding down these keys will dump a user. The user is disconnected without
  1092. warning!
  1093.  
  1094. The <Alt><(0-9)> key combination.
  1095. Pressing Alt(0-9) will switch the PMS display to that channel (if valid).
  1096.  
  1097. <PageUp> & <PageDown> keys.
  1098. 1. Used in response to a chat request alarm from a user.
  1099. Pressing <PageUp> will advise the user that you are ready to chat.
  1100. Pressing <PageDown> will advise the user that you are not available.
  1101. (Doing nothing will also give the unavailable response after a short delay).
  1102. 2. When a user is connected to the PMS, pressing <PageUp> will advise the user
  1103. that you wish to chat to them. <PageDown> terminates the chat and puts the user
  1104. back to the normal PMS.
  1105. The <PageUp> and <PageDown> keys ONLY work when the PMS is connected to a user.
  1106.  
  1107. The <Tab> key.
  1108. When in TERMINAL or CHAT mode, the <Tab> key will add 3 chevrons plus a
  1109. <Return> to the input line.   >>><Cr>
  1110.  
  1111. -------------------------------------------------------------------------------
  1112. Message status flags.
  1113.  
  1114. Flag       Meaning               Number (in hex)
  1115.  0   RBA   Read by addressee     0x = Number of times read
  1116.                                  8x = Read by SysOp
  1117.                                  
  1118.  1   RBO   Read by others        xx = Number of times read
  1119.  
  1120.  2   TYP   Message type          01 = Bulletin (B)
  1121.                                  02 = Personal (P)
  1122.                                  04 = AutoRead (Z)
  1123.                                  08 = User     (U)
  1124.                                  10 = ACK      (A)
  1125.                                  20 = (spare)
  1126.                                  40 = (spare)
  1127.                                  80 = Undetermined type
  1128.  
  1129.  3   CMP   Completed             00 = Message Incomplete
  1130.                                  01 = Message completed
  1131.                                  Cn = Incoming message on channel n
  1132.  
  1133.  4   KOF   Kill on forwarding    00 = Do not kill
  1134.                                  01 = Kill after forwarding
  1135.  
  1136.  5   FWT   Forward type          x0 = Not for forwarding
  1137.                                  x1 = Waiting for normal forwarding
  1138.                                  1x = Forward only. No local read
  1139.                                  2x = Message still being received
  1140.                                  8x = Flagged for SysOp's attention
  1141.  
  1142.  6   FWD   Forwarded             00 = Not yet forwarded 
  1143.                                  01 = Read by addressee before being forwarded
  1144.                                  08 = Forwarded
  1145.  
  1146.  7   ACT   Active flag           Bit field
  1147.                                  .... ...0 = Killed
  1148.                                  .... ...1 = Active 
  1149.                                  ...1 .... = On hold
  1150.                                  ..1. .... = Locked by message editor
  1151.                                  .1.. .... = Un-killable (by user/auto system) 
  1152.                                  1... .... = Un-deleteable (by auto system) 
  1153.         x = anything 
  1154.         . = 0 or 1
  1155.  
  1156. A typical MS (Message Status) might produce:
  1157.  
  1158. RBA - &H01     Read once by the addressee
  1159. RBO - &H02     Also read twice by other stations
  1160. TYP - &H01     Bulletin message
  1161. CMP - &H01     The message is complete
  1162. KOF - &H00     Don't kill after forwarding
  1163. FWT - &H01     Message for normal automatic forwarding
  1164. FWD - &H08     Has been forwarded successfully
  1165. ACT - &H01     An active message.
  1166. Forwarded to:  (callsigns)
  1167.  
  1168. The last line indicates which stations the message already have the message.
  1169.  
  1170. To change a message's status use MM followed by a list of parameters in the
  1171. same order as the MS list. Use a * to leave a flag unchanged. You only need to
  1172. enter parameters up to the one you wish to change.
  1173.  
  1174.   e.g. Assume that message number 123 has been entered onto the system 
  1175.   as a bulletin, and you wish to change this to a personal message....
  1176.  
  1177.    MM 123 * * 2
  1178.  
  1179.   ....will do the trick. Flags 0 and 1 remain unchanged. Once the change has
  1180.   be made to the relevant flag, no more asterisks need be added.
  1181.   Numbers can be entered using any valid number system. 
  1182.   i.e.  &HF1  &B11110001  241  F1H   are all the same value.
  1183.  
  1184. When changing a flags value, be careful to only change the bits required!
  1185.  
  1186.  
  1187. Special message types.
  1188.  
  1189. Un-killable and Un-deleteable messages.
  1190. Only the SysOp can kill/delete this type of message, after setting the status
  1191. back to normal. The auto housekeeping function will not be able to kill or
  1192. delete them either. 
  1193.  
  1194. -------------------------------------------------------------------------------
  1195. Screen filter.
  1196.  
  1197. Control codes will normally be printed to the screen as ascii characters,
  1198. rather than being 'interpreted' as vdu commands.
  1199. However, if any control codes cause a problem (possibly with ANSI.SYS), you can
  1200. filter them out with:
  1201. SCREENFILTER <start-end>            to filter out a range of codes, or
  1202. SCREENFILTER code1,code2,code3....  to filter out a list of individual codes.
  1203. You can use multiple SCREENFILTER commands.
  1204.  
  1205. Normally, you should not need to use the SCREENFILTER command.
  1206.  
  1207. -------------------------------------------------------------------------------
  1208. Printer filter.
  1209.  
  1210. You can filter out ascii codes from the printer with:
  1211. PRINTERFILTER <start-end>  to filter out a range of codes, or
  1212. PRINTERFILTER code1,code2,code3....  to filter out a list of individual codes.
  1213. Do NOT exclude 10 and 13 (CR & LF) as this will prevent normal printer
  1214. operation. You can use multiple PRINTERFILTER commands.
  1215. i.e.
  1216. PRINTERFILTER 0-9
  1217. PRINTERFILTER 11,12
  1218. PRINTERFILTER 14,31
  1219. will filter out all control codes except 10 * 13
  1220. This may be required to prevent erratic printer operation when printing is
  1221. enabled whilst the PMS is monitoring 8 bit binary data.
  1222. Some printers may require codes 128-255 to be filtered out as well.
  1223.  
  1224. Normally, you should not need to use the PRINTERFILTER command.
  1225.  
  1226. -------------------------------------------------------------------------------
  1227. Printer control.
  1228.  
  1229. The PMS attempts to manage printer output, to prevent an attempt to print to a
  1230. printer that is off-line, or otherwise unavailable, from hanging the PMS.
  1231. However, pressing the Print-Screen key to dump the screen to printer with the
  1232. printer unavailable (switched off or buffer full) may well hang the system.
  1233.  
  1234. -------------------------------------------------------------------------------
  1235. Dump user.
  1236.  
  1237. A user may be dumped at any time by pressing, and holding, the
  1238. <Right Shift> and <Right Ctrl> keys simultaneously. The user is disconnected
  1239. immediately without any warning even if in the middle of a file up/download.
  1240. This should be regarded as a last resort Panic Button only.
  1241.  
  1242. -------------------------------------------------------------------------------
  1243. Compressed message forwarding.
  1244.  
  1245. Compressed message forwarding to/from NNA BBS.
  1246. The PMS is capable of forwarding messages in NNA bulk compressed format to
  1247. other stations using compatible code (NNA/NPFPMS)
  1248. To enable this function include a L in the EXT line in the npfpms.cfg file.
  1249.  
  1250. Compressed message forwarding to/from FBB BBS.
  1251. The PMS is capable of forwarding messages in FBB bulk ascii/compressed format
  1252. to other stations using compatible code (NNA/FBB/NPFPMS)
  1253. To enable this bulk ascii forwarding include the letters F in the EXT line in
  1254. the npfpms.cfg file. To enable this bulk compressed forwarding include the
  1255. letters B in the EXT line in the npfpms.cfg file.
  1256. (If you include the B, then you must also include the F)
  1257.  
  1258. Protocol errors sent out by FBB BBS's.
  1259. --------------------------------------
  1260. 0 : Binary packet is not of header (HD) type when receiving title.
  1261. 1 : Checksum of message is wrong.
  1262. 2 : Message could not be un-compressed.
  1263. 3 : Received binary frame is not DATA (DT), not EOT (ET).
  1264. 4 : Checksum of proposals is wrong.
  1265. 5 : Answer to proposals must start with F or **
  1266. 6 : Answer to proposals must be either FF or FS
  1267. 7 : More than 5 answers to proposals.
  1268. 8 : Answer to proposal is not +, - or =
  1269. 9 : The number of answers does not match the number of proposals.
  1270. 10: More than 5 proposals have been received.
  1271. 11: The number of fields in a proposal is wrong (6 fields).
  1272. 12: Protocol command must be FA, FB, F>, FF or FQ
  1273. 13: Protocol line starting with a letter which is not F or *
  1274.  
  1275. -------------------------------------------------------------------------------
  1276. Review mode.
  1277.  
  1278. A scroll back buffer is available. Press <Ctrl><Page up> to
  1279. activate. You may scroll backwards and forwards with the cursor keys, Page up,
  1280. Page down, Home and End keys. 
  1281. Press <Esc> to exit the review mode.
  1282.  
  1283. -------------------------------------------------------------------------------
  1284. Number formats.
  1285.  
  1286. The PMS will normally accept numeric input in the following formats.
  1287.  
  1288. Decimal         e.g.  1201
  1289. Hex             e.g.  &HA6  or  A6H  or  $A6
  1290. Binary          e.g.  &B100110  or  100110B
  1291. Octal           e.g.  &O102  or  &102
  1292.  
  1293. Invalid numbers (e.g. &HXYZ or &B56) will normally default to zero.
  1294.  
  1295. The highest valid Decimal number is  999999
  1296. The highest valid Hex number is      &H7FFF  (32767)
  1297. The highest valid Binary number is   &B111111111111111  (32767)
  1298.  
  1299. Out-of-range numbers will be forced to within the valid range for the command.
  1300. e.g.  R -6   will be forced to 0  (Negative numbers are invalid)
  1301.       R 1234567  will be forced to 99999  (The highest message number possible) 
  1302.  
  1303. The system will treat all numeric input as DECIMAL unless instructed otherwise!
  1304.  
  1305. -------------------------------------------------------------------------------
  1306. Security code.
  1307.  
  1308. This is a simple security system to trip up the casual hacker trying to access
  1309. the PMS by adopting the PMS's own callsign.
  1310.  
  1311. Add the line:   SECURITY (characters)   to the npfpms.cfg file.
  1312. If anyone logs on to the PMS using the PMS's callsign (SSID ignored), the extra
  1313. characters must be sent before the normal PMS> prompt will be seen. Anything
  1314. else will cause the PMS to terminate the connection. Choose characters that may
  1315. go unnoticed by a casual observer, rather than something obvious.
  1316. i.e.  .@-   would be far less obvious than  SYSOP
  1317.  
  1318. By default the security code is disabled.
  1319.  
  1320. Note:
  1321. If you wish the PMS to accept forwarding from another system using the same
  1322. callsign, then you will need to disable the security feature.
  1323. e.g.  A TCP/IP system with the call G8NPF-5 forwarding to the PMS which has
  1324. the call G8NPF-3
  1325.  
  1326. -------------------------------------------------------------------------------
  1327. User flags.
  1328.  
  1329. These flags can be set or cleared for individual users by using the Edit User
  1330. command:  EU <callsign>
  1331. The letters in the flag string indicate the following:
  1332.  
  1333. X   Expert mode on.
  1334. P   List Pause on.
  1335. L   Reverse list order on (list high to low).
  1336. E   User gets shorter log-on messages.
  1337. B   User is a BBS. No log-on messages.
  1338. C   Accept connections from this user.
  1339. K   Suppress the listing of killed messages.
  1340. U   Allow user to upload files.
  1341. D   Allow user to download files.
  1342. R   Allow user to read 3rd party messages.  (No effect if THIRDPARTY=0)
  1343. S   Allow user to send 3rd party messages.  (No effect if THIRDPARTY=0)
  1344. A   Allow user to user Remote SysOp command.
  1345.  
  1346. New users will default to         :   P,C,K,U,D
  1347. The SysOp's entry will normally be:   P,C,K,U,D,R,S,A
  1348.  
  1349. Using the EU command to change a users flags.
  1350. To set a flag, enter its letter with an optional + sign.
  1351. To clear a flag, enter its letter with a - sign.
  1352. You may separate the entries with spaces or commas.
  1353. i.e.
  1354.   +C+A-RU
  1355.    C +A -R U
  1356.   +C, A,-R,+U
  1357. will all set the C, A and U flags, and clear the R flag.
  1358.  
  1359. The X, P and L flags can be changed by users, with the X, P and LR commands.
  1360. The other flags can only be changed by the SysOp, with the EU command.
  1361.  
  1362. New users will have the P flag set by default.
  1363. Set the B flag for unattended/BBS stations. They do not want any log-on text.
  1364. Set the E flag for regular users, who no longer want the full log-on text.
  1365.  
  1366. ------------------------------------------------------------------------------
  1367. Files directory description file.
  1368.  
  1369. An ascii file called CONFIG\filedesc.txt is used to describe all the files
  1370. and sub-directories within the FILES section. See the sample file.
  1371. You must edit this file to suit your files. The maximum number of entries
  1372. scanned in this file is limited by the TEXTBUFFERSIZE setting in the npfpms.cfg
  1373. file. Entries greater than this will be ignored.
  1374. If a file-type is indicated by the type letter:
  1375. A for ASC  T for TXT  B for BIN  D for DIR  Z for ZIP
  1376. Unknown types show as ...
  1377. A file description is not mandatory, but is best included.
  1378.  
  1379. -------------------------------------------------------------------------------
  1380. Text colours.
  1381.  
  1382. The monitored frames from each BPQ host port are displayed in a different
  1383. colour. The colours can be set in the npfpms.cfg file with the commands:
  1384. PORT1COLOUR  to  PORT16COLOUR  (All default to white)
  1385.  
  1386. Other colours are:
  1387. LOCALINCOLOUR   Defaults to light cyan. Mostly used for keyboard text.
  1388. LOCALOUTCOLOUR  Defaults to cyan. Mostly used for command reply text.
  1389. SYSTEMCOLOUR    Defaults to green. Mostly used for system text.
  1390. ERRORCOLOUR     Defaults to light red. Used for error messages.
  1391. KEYBOARDCOLOUR  Defaults to white. 
  1392.  
  1393. Text colours on a VGA system are:
  1394. O   Black
  1395. 1   Blue
  1396. 2   Green
  1397. 3   Cyan
  1398. 4   Red
  1399. 5   Magenta
  1400. 6   Brown
  1401. 7   White
  1402. 8   Gray
  1403. 9   Light Blue
  1404. 10  Light Green
  1405. 11  Light Cyan
  1406. 12  Light Red
  1407. 13  Light Magenta
  1408. 14  Yellow
  1409. 15  High intensity White
  1410.  
  1411. -------------------------------------------------------------------------------
  1412. REQFIL, REQDIR, FNDFIL and WP servers.
  1413.  
  1414. The method of sending requests to other PMS/BBS's is described in the file
  1415. USER.DOC, in the FILES directory.
  1416.  
  1417. When the PMS receives a server request it will normally process it immediately
  1418. and generate a return message.
  1419. Note: The PMS will only respond to a server request addressed DIRECTLY to the
  1420. PMS as a PERSONAL message.
  1421.  
  1422. i.e. It will NOT respond requests like:
  1423.   SB REQDIR (@anycall)
  1424.   SB REQDIR @GBR
  1425.   SP REQDIR @anycall
  1426.  
  1427. It will respond to:
  1428.   SP REQDIR
  1429.   SP REQDIR @(its own callsign)
  1430.  
  1431.  
  1432. -------------------------------------------------------------------------------
  1433. Automatic listing of mail from your NTSBBS with AutoList and AutoRead.
  1434.  
  1435. The PMS supports two types of AutoList function.
  1436. Type A (generic) is suitable use with most types of BBS, in particular NNA and
  1437. FBB BBS's .
  1438.  
  1439. Type B is for users of FBB BBS's that support UNPROTO LIST broadcasts.
  1440.  
  1441. AutoList Type A.
  1442. ----------------
  1443. The PMS will automatically log on to your local NTSBBS and issue a sequence of
  1444. commands (contained in the file CONFIG\autolist.cmd) to download mail headers.
  1445. The autolist.cmd file will normally just contain a single L list command, but
  1446. the file may contain any valid command(s).  e.g.  L> DEBATE   or   L@ GBR
  1447. All text received from the BBS is written to the AutoListA file.
  1448. The AutoListA file can be browsed/edited by using the <Alt>F6 function key.
  1449.  
  1450. AutoList Type B.
  1451. ----------------
  1452. The PMS will make use of FBB Unproto broadcasts to maintain an up-to-date
  1453. mail header list. The system watches for FBB Unproto UI broadcasts using the
  1454. callsigns specified by the UPCALL command, and automatically adds the received
  1455. lines to the file. If any lines are missing, the PMS will request them
  1456. automatically from the FBB BBS. For this to operate, your FBB BBS SysOp must
  1457. enable your U flag in his BBS setup). The update will be requested on BPQ
  1458. radio port specified with the UPPORT command. This will normally be the port
  1459. you receive the unproto broadcasts on.
  1460.  
  1461. If the BBS can tell the PMS to stop asking for updates if it is not configured
  1462. to allow you to request updates. If this occurs, the only way to re-enable the
  1463. update request function in the PMS is to re-boot the PMS.
  1464. Note:  There is no point in the PMS requesting updates if the BBS is not
  1465. configured to respond to them!
  1466.  
  1467. The AutoListB file can be browsed/edited by using <Ctrl>F6 function key.
  1468.  
  1469. AutoRead.
  1470. ---------
  1471. Editing the AutoList file. (Both types A and B)
  1472. Mark any messages you wish the PMS to Read the next time round with a # in the
  1473. first character position. This is done by pressing the <Tab> key to toggle
  1474. a leading # on and off automatically. You can also delete unwanted lines. 
  1475. With a type 2 list, it best not to delete lines near the top of the list.
  1476. The format of the header lines is critical, so you cannot change anything else.
  1477. Most editor functions that alter the text are locked out!
  1478.  
  1479. The next time the PMS performs an AutoList/Read session, it will also do a Read
  1480. of all the messages in the list marked with a #. The messages will be added to
  1481. the PMS message base. After completing a successful read, the # in the list
  1482. will be changed to a *  If the PMS cannot decode a message, the # will be
  1483. changed by a ?  If the message number marked is invalid (not a number?) the #
  1484. will be changed with a !
  1485.  
  1486. The AutoRead function extracts the TO @BBS FROM and SUBJECT fields from the
  1487. message headers received from the BBS, as they appears in the AutoList list.
  1488. The PMS will recognise 3 types of system based on the SID received from the BBS.
  1489. These are NNABBS, FBBBBS and NPFPMS. Anything else is treated as OTHERBBS.
  1490. The PMS needs to know the order of the fields in the message header. The
  1491. default field order expected (for all BBS types) is 4,5,6,8
  1492.  
  1493. For example:
  1494. A typical header from a NNA BBS looks like:
  1495.           Msg#  TS  Size  To     @BBS   From   Date   Subject
  1496.           71812 B$   6780 DEBATE GBR    G9ABC  03-May Debating issues.
  1497. fields>   1     2    3    4      5      6      7      8
  1498. required>                 4      5      6             8
  1499.                 
  1500. A typical header from a FBB BBS looks like:
  1501.           Msg #  TSL  Size To    @BBS    From   Date/Time Subject
  1502.           71651  B$   6780 DEBATE@GBR    G9ABC  0403/1819 Debating issues.
  1503. fields>   1      2    3    4      5      6      7         8
  1504. required>                  4      5      6                8
  1505.  
  1506. So, although the spacing is different, the field order is the same. The actual
  1507. field order may vary depending on how the BBS has been set up, and what
  1508. software it is using.
  1509.  
  1510. If the header from your NTSBBS has the same arrangement of fields, then you do
  1511. not need to alter the default configuration. If the order of the fields differs
  1512. you must specify the field order in the NPFPMS.CFG file by using the
  1513. command:  FIELDS <data>
  1514. <data> is a list of 16 numbers, 4 for each BBS type, separated by commas.
  1515. The order is:  OTHERBBS  FBBBBS  NNABBS  NPFPMS
  1516. In each group of 4, the first is the TO field, the second is the @BBS field,
  1517. the third is the FROM field, and the fifth is the SUBJECT field.
  1518. i.e.  FIELDS 4,5,6,8,4,5,6,8,4,5,6,8,4,5,6,8  (The defaults) You must specify
  1519. all 16 numbers, even if your are only changing one set of four.
  1520.  
  1521. If the PMS extracts a field incorrectly, the message header, as displayed on
  1522. the PMS, will be incorrect. This will not cause any real problems, as AutoRead
  1523. messages are given the status ZN and are treated as personal messages. They
  1524. cannot be read by anyone other than the PMS SysOp, and will not be included in
  1525. any forwarding sessions, or appear in listings to other users of the PMS.
  1526. (Unless THIRDPARTY is set to ON)
  1527.  
  1528.  
  1529. General.
  1530. --------
  1531. AUTOREADCMD  R or V ?
  1532. V (Verbose read) will retain all the routing lines, whilst R (Read) will not.
  1533. The routing information lines contains the senders Home BBS. If you use the SR
  1534. (or SC) command on a message that does not have routing information, the PMS
  1535. will check its WP file and may, or may not, obtain the senders correct Home BBS
  1536. from there. The routing information is more reliable, but can involve
  1537. downloading a large amount of extra text. This might be seen as anti-social on
  1538. a busy frequency.
  1539. Note: This does not apply when AutoReading from a FBB BBS, where messages are
  1540. read in compressed format, which includes the routing information.
  1541.  
  1542. AUTOROUTE-A contains the connect path to your NTSBBS for type A AutoList
  1543. AUTOROUTE-B contains the connect path to your NTSBBS for type B AutoList
  1544. e.g.  AUTOROUTE-A G1NNA-1:GB7ESX    or    AUTOROUTE-A GB7DDX
  1545.       
  1546. You can cross connect via a KA node by using the X option. e.g.
  1547.       AUTOROUTE-A KEPAC3:X GB7DUG
  1548.  
  1549. (See 'Syntax of connect paths' for a full description of connect paths)
  1550.  
  1551.  
  1552. AUTOPROMPT-A contains the prompt the NTSBBS issues when it has finished
  1553. sending text. The prompt will normally be something like:   GB7ESX BBS >
  1554. Some BBS's (FBB) can prefix the prompt with a (variable) port number, and some
  1555. include the time (obviously variable!). So, what the PMS looks for is a line
  1556. ending with a > character, and including the specified prompt within the line.
  1557. If AUTOPROMPT-A is set (for example) to  GB7ESX BBS  then the PMS will accept
  1558. 2:GB7ESX BBS >   or   GB7ESX BBS 10:35 >   or just   GB7ESX BBS>
  1559. In the (unlikely) event of the prompt actually appearing in a message header or
  1560. content, then the AutoList/Read function will terminate prematurely, so make
  1561. the AUTOPROMPT-A as specific as possible.
  1562. (The above also applies to AUTOPROMPT-B)
  1563.  
  1564. IT IS MOST IMPORTANT TO GET THE PROMPT CORRECT.
  1565. It is the only way the PMS knows it has finished receiving text from the BBS.
  1566. If the prompt is incorrect, the PMS will just sit and wait until your
  1567. connection times out, and the BBS disconnects you.
  1568.  
  1569. Set the times to carry out the AutoList function in the npfpms.cfg file.
  1570. e.g.  AUTOLISTTIME-A hh:mm hh:mm  etc.....
  1571.       AUTOLISTTIME-B hh:mm hh:mm  etc.....
  1572.  
  1573. The AutoList and AutoRead functions have been tested with NNA BBS and
  1574. FBB BBS. I do not know if they will work correctly with other types of BBS
  1575. software. I would be pleased to hear if they do, or do not!
  1576.  
  1577. Note:  If your NTSBBS has a pause option, then it *MUST* be set to OFF, or
  1578.        AutoList and AutoRead will not function correctly.
  1579.  
  1580.  
  1581. Automatic AutoList functions are disabled if no times are set.
  1582. The reception and processing of FBB Unproto broadcasts can be disabled by
  1583. setting UPLISTSIZE to 0 (zero).
  1584.  
  1585.  
  1586. The two AutoList functions can run alongside each other, but normally one or
  1587. the other will be disabled.
  1588. (You could, for instance, run the AutoList type A function with a NNA BBS, and
  1589. the AutoList type B function with a different FBB BBS. Now, whether this is a
  1590. good idea or not is another question....) 
  1591.  
  1592. Note:
  1593. Function keys F6, F8 & F9 have been re-programmed in PMS version 2.17 to
  1594. accommodate the new functions.
  1595.  
  1596. -------------------------------------------------------------------------------
  1597. Monitor port mask options.
  1598.  
  1599. The monitor mask controls which radio ports are monitored, and what types of
  1600. frames are displayed. The PMS can monitor BPQ radio ports 1 to 12
  1601. The mask number is a 4 digit hexadecimal number.
  1602.  
  1603. The first digit is the frame mask, which sets the types of frames monitored.
  1604. The value is a hex number from 0 to F. It is a bit field where:
  1605. Bit 1 enables the display of NODES broadcasts.
  1606. Bit 2 enables the display of supervisory frames.
  1607. Bit 3 enables the display of NetRom frames.
  1608. Bit 4 is not used, and is always 0.
  1609. Normal frames containing data (text) are always displayed.
  1610. The default is 7 (bits 1-3 set) which means monitor all types of frames.
  1611.  
  1612. The last 3 digits of the number are the BPQ radio port mask.
  1613. The value is a 3 digit hex number from 000 to FFF. It is a bit field where:
  1614. Bit 1 enables monitoring of radio port 1
  1615. Bit 2 enables monitoring of radio port 2
  1616.  (...through to...)
  1617. Bit 12 enables monitoring of radio port 12
  1618. The default value of FFF (hex) means monitor all ports.
  1619.  
  1620. The full mask value will normally be 7FFF hex. The current value is displayed
  1621. on the lower status line as Mask-xxxx and can be changed with the F3 key.
  1622.  
  1623. -------------------------------------------------------------------------------
  1624. The system text editor.
  1625.  
  1626. The editor is not intended to be a full-blown word processor!
  1627. It should be sufficient for its purpose.
  1628. Note: All control codes, other than 13 (CR) and 26 (EOF), will be removed from
  1629. a text file loaded into the editor.
  1630.  
  1631. Whilst in the editor you can use the normal edit keys;
  1632. Insert, Delete, Backspace, Arrow keys, Home, End, Page up, Page Down,
  1633. and Ctrl+(edit key) to move around the text. Automatic word wrap is used.
  1634.  
  1635. ^Y   Delete an entire line.
  1636. ^U   Re-insert the last line deleted, at the current line position.
  1637. ^P   Allow the next character to be a control code.
  1638.  
  1639. ^KA  Copy a marked block to the current cursor position.
  1640. ^KB  Mark the start of a block.
  1641. ^KH  Clear the markers.
  1642. ^KK  Mark the end of a block.
  1643. ^KP  Print a marked block. If no markers are set, then nothing is printed.
  1644. ^KQ  Quit the editor without saving the file.
  1645. ^KR  Read another file into the editor, at the current cursor position.
  1646. ^KS  Save the file and stay in the editor.
  1647. ^KV  Move a marked block to the current cursor position.
  1648. ^KW  Append a marked block to a file.
  1649. ^KX  Save the file, then quit the editor.
  1650. ^KY  Delete a (small) marked block.
  1651.  
  1652. <Enter>     Split the line, or create a new blank line.
  1653. <Tab>       Inserts spaces to move the cursor to the next Tab position.
  1654.  
  1655. ^ indicates a control key sequence. ^KR is <Ctrl>K followed by R
  1656.  
  1657. Note:
  1658.      The block markers may be incorrect if a word wrap occurs at the beginning
  1659.      or end of the marked block.
  1660.  
  1661. Editing a PMS message file.  (S/EM)
  1662. If you are editing a message file, do not alter or delete the R: routing lines,
  1663. as these are used by the forwarding system.
  1664.  
  1665. If you wish to read the contents of another PMS message into the editor, then
  1666. you can refer to the PMS message in shortform. Assuming the message number to
  1667. read is 1234, then enter #1234 as the filename to read and the name will be
  1668. converted to MAIL\MSG01234.msg
  1669. If you actually need to read in a real file called #1234 then include the full
  1670. path in the filename.  e.g. \TEXT\#1234
  1671.  
  1672. -------------------------------------------------------------------------------
  1673. 7Plus files.
  1674.  
  1675. The PMS can automatically convert 7Plus files received as messages into
  1676. separate 7Plus files using the original file name extracted from the 7Plus
  1677. header.  e.g. If a multi-part 7Plus program has been sent to the PMS as message
  1678. numbers 201, 202 and 203 then enter the command:  D7 201 202 203
  1679. D7 is the command, followed by the relevant message numbers.
  1680. It will create 3 files in the 7PLUS\ sub-directory called xxx.P01 xxx.P02  and
  1681. xxx.P03 (The xxx being the original filename)
  1682.  
  1683. Note: The PMS does not actually decode the files.  It converts message files
  1684. into 7Plus files ready for decoding with 7PLUS.EXE
  1685.  
  1686. (7PLUS 2.02 is copyright (C) DG1BBQ)
  1687.  
  1688. -------------------------------------------------------------------------------
  1689. User variables.
  1690.  
  1691. The following variables may be used in SCRIPT files, and in the multi-line
  1692. configuration commands in the npfpms.cfg file.
  1693. The variable will be converted to the appropriate text when transmitted.
  1694. Any $x not listed below will be removed from the text.
  1695. Note: The case of the character is significant!
  1696.  
  1697. $$        The $ character itself.
  1698. $A        The day of the week.
  1699. $B        Bell.  Adds a ASCII code 7 to the text.
  1700. $C        Callsign of the user currently connected.
  1701. $D        USA Date. MM-DD-YYYY      e.g. 09-26-1992
  1702. $d        Date.     DD month        e.g. 26 Sep
  1703. $E        Date.     DD-MM-YY        e.g. 26-09-92
  1704. $e        Date.     DD-MM-YYYY      e.g. 26-09-1992
  1705. $F        Lowest message number.
  1706. $g        Date.     DD month YYYY   e.g. 26 Sep 1992
  1707. $I        SysOp's name.
  1708. $J        A New Line  (CR - ASCII 13)
  1709. $K        The currently connected users total number of log-on's.
  1710. $L        Highest message number.
  1711. $l        Users message pointer.
  1712. $M        "morning/afternoon/evening"  (Depending on time of day)
  1713. $N        Number of active messages.
  1714. $n        Number of unread messages for currently connected user.
  1715. $O        PMS callsign.
  1716. $o        The local NTSBBS callsign.
  1717. $P        The PMS channel number.
  1718. $S        Time signature.  e.g. gmt
  1719. $T        Current time.  hh:mm
  1720. $t        Current time.  hh:mm:ss
  1721. $U        Same as $X
  1722. $V        Software version.
  1723. $W        The currently connected users name.
  1724. $X        The currently connected users last log-on date. (dd-month-yyyy)
  1725. $x        The currently connected users last log-on date. (dd-month)
  1726. $Y        The currently connected users last log-on time. (hh:mm)
  1727.  
  1728. S0 to $9 are reserved for internal use. Do not use!
  1729. Any $x variable not listed above will be removed from the text.
  1730. Note:
  1731. The date separator depends on the setting of DATESEP in the npfpms.cfg file
  1732. It defaults to a -
  1733.  
  1734. ===============================================================================
  1735. DESQview interface.
  1736.  
  1737. NPFPMS is a DESQview aware program. It can make the required calls to the
  1738. DESQview API to interface correctly with DV. It can also give up it timeslice
  1739. when just its idling, waiting for input.
  1740.  
  1741. The PMS command line switch /V has the following options:
  1742. /V0  Disable all DV calls.
  1743. /V1  Enable DV critical calls.
  1744. /V2  Enable release timeslice calls.
  1745. /V3  Enable both. (Default)
  1746. If the PMS detects DESQview has been loaded it will enable all DV calls, unless
  1747. a /V option has been used on the command line. If DESQview has not been loaded
  1748. then all DV calls are disabled regardless of any /V option.
  1749.  
  1750.  
  1751. Suggested set-up for DESQview V2.3+ and a 386/486 PC
  1752.  
  1753. The PMS *should* work under DESQview on a 286, but its not been tested.
  1754. The BIOS must be dated 01/10/86 or later. The DESQview version must be 2.3 or
  1755. later.
  1756.  
  1757.  
  1758.   Program Name............: NPFPMS
  1759.   Keys to Use on Open Menu: PM                         Memory Size (in K): 590
  1760.  ──────────────────────────────────────────────────────────────────────────────
  1761.   Program...: C:\PMS\PMSCODE.EXE
  1762.   Parameters: /DX
  1763.   Directory.: C:\PMS
  1764.  ──────────────────────────────────────────────────────────────────────────────
  1765.   Options:
  1766.                Writes text directly to screen.......: [N]
  1767.                Displays graphics information........: [N]
  1768.                Virtualize text/graphics (Y,N,T).....: [N]
  1769.                Uses serial ports (Y,N,1,2)..........: [N]
  1770.                Requires floppy diskette.............: [N]
  1771.  
  1772.  
  1773.  
  1774.                       Change a Program Advanced Options
  1775.  
  1776.  System Memory (in K).......:   0   Maximum Program Memory Size (in K)..: 630
  1777.  
  1778.  Script Buffer Size.........:   0   Maximum Expanded Memory Size (in K):
  1779.  
  1780.  Text Pages: 1  Graphics Pages: 0   Initial Mode:        Interrupts: 00 to FF
  1781.  ──────────────────────────────────────────────────────────────────────────────
  1782.   Window Position:
  1783.     Maximum Height:  25       Starting Height:  25       Starting Row...:  0
  1784.     Maximum Width.:  80       Starting Width.:  80       Starting Column:  0
  1785.  ──────────────────────────────────────────────────────────────────────────────
  1786.  
  1787.   Close on exit (Y,N,blank)......: [N]  Uses its own colors..............: [Y]
  1788.   Allow Close Window command.....: [N]  Runs in background (Y,N,blank)...: [Y]
  1789.   Uses math coprocessor..........: [N]  Keyboard conflict (0-F)..........: [0]
  1790.   Share CPU when foreground......: [Y]  Share EGA when foreground/zoomed.: [Y]
  1791.   Can be swapped out (Y,N,blank).: [ ]  Protection level (0-3)...........: [2]
  1792.  
  1793.  
  1794. Notes:
  1795. 'Uses serial ports' is set to [N] as the PMS program does not use the serial
  1796. ports directly. Control of the serial ports is by the BPQcode, which must be
  1797. loaded BEFORE DESQview.
  1798.  
  1799. It *may* be possible to reduce the Memory Size down from the 590K suggested
  1800. if the buffer sizes are kept small. Should the PMS stop with an ERROR 7,
  1801. or DESQview just aborts the PMS, it is most likely running out of memory!
  1802. An EXCEPTION 13 error can be generated by (Q)EMM386.SYS if the PMS does not
  1803. have enough memory to run one of its sub-programs (i.e. message compression).
  1804. *THE* most common reason for the PMS to fail to work correctly under DESQview
  1805. is lack of allocated memory!
  1806.  
  1807. The PMS will make the relevant calls to DESQview to prevent time-critical
  1808. events being interrupted.
  1809.  
  1810. If the PMS writes outside its DV window, try setting:
  1811.    Virtualize text/graphics (Y,N,T).....: [Y]
  1812. Also try:
  1813.    Writes text directly to screen.......: [Y]
  1814. (but be aware that this may cause DV to suspend the PMS when it is not running
  1815. as a full-screen foreground task).
  1816.  
  1817. ===============================================================================
  1818. USER.DOC file
  1819.  
  1820. Please note that the format of the user.doc file is important as it is used by
  1821. the help system. If you edit the file do not remove the blank lines between
  1822. entries, or the leading spaces.
  1823. You may edit the actual text, but do not change the way it is set out.
  1824.  
  1825. -------------------------------------------------------------------------------
  1826. Log file.
  1827.  
  1828. The log file records the activity of the PMS. Most automatic functions and
  1829. errors are recorded in the system log. The log can be browsed/edited by
  1830. pressing the F6 key to load the log file into the editor. You must not delete
  1831. the log file, or edit it from outside whilst the PMS is running!
  1832.  
  1833. -------------------------------------------------------------------------------
  1834.  
  1835. When a new message arrives for the SysOp a series of 5 pips will sound. The
  1836. same signal is sounded (as a reminder) if a Msg for:  beacon is transmitted
  1837. which includes the SysOp's callsign. The Scroll Lock LED on the keyboard will
  1838. also flash to indicate a new message has arrived. Reading ANY message will
  1839. cancel the flash.
  1840.  
  1841. -------------------------------------------------------------------------------
  1842. BID's and MID's.
  1843.  
  1844. Bulletin ID's are stored in a file called SYS\bids.rec
  1845. This file should be pruned occasionally (every few months?) to remove oldest
  1846. entries. The larger the file grows, the slower the duplicate bid checking will
  1847. be. You can use the system editor to edit this file, as the file is in ascii
  1848. format. The <Shift>F6 key will load the bids.rec file into the editor.
  1849.  
  1850. -------------------------------------------------------------------------------
  1851. Testing the PMS locally.
  1852.  
  1853. You can connect from one PMS window to another to test the system.
  1854. e.g.
  1855. Select window 0
  1856. Press F10 to connect to the BPQ switch.
  1857. Type C G8NPF-3   (or whatever the PMS's callsign is)
  1858. (Enter your security characters, if appropriate).
  1859. You will now be connected to the PMS, as if you had connected over the air.
  1860.  
  1861.  
  1862. ===============================================================================
  1863. Restricting the range of messages Listed and Read.
  1864. The A and R parameters.
  1865.  
  1866. In order to speed up searches, most list commands only operate on a restricted
  1867. range of messages. The basic L (List) command only scans messages added since
  1868. the user last did a List. Most other List and Read commands only scan messages
  1869. added since the users last log-on. To force these commands to search ALL the
  1870. messages on the system, append an A to the command.
  1871. e.g.    L A
  1872.         L> OS2 A
  1873.         L< G8NPF A
  1874.  
  1875. Some commands normally search the entire message base by default. To restrict
  1876. these commands to searching new messages only, append an R to the command.
  1877. e.g.    LX R
  1878.         LM R
  1879.         
  1880. If you have a large number of messages in the message base, then some List
  1881. commands can still result in very long lists.
  1882. (i.e. A new user logs on and types L, or the SysOp uses the LX command).
  1883. You can set a limit to the number of messages listed by any of the List
  1884. commands, with the MAXLIST setting in the npfpms.cfg file. MAXLIST defaults to
  1885. 50. If recent messages have been killed or deleted, then you may get somewhat
  1886. less than the expected maximum.
  1887.  
  1888.  
  1889. Note:
  1890. A users message pointers are updated automatically when the user disconnects
  1891. with the (B)ye (or Q) command .
  1892. To update your (the SysOp's) message pointers, just type B at a command line.
  1893.  
  1894. -------------------------------------------------------------------------------
  1895.  
  1896. Misc. notes regarding the BPQCFG.
  1897.  
  1898. The PMS callsign is read from the BBSCALL entry in the BPQCFG.BIN file.
  1899.  
  1900. The PMS "Message for:" beacon will be transmitted on all BPQ ports that have an
  1901. UNPROTO path set in the BPQCFG file.
  1902.  
  1903. The BPQ directory specified by the BPQDIR option must contain the file
  1904. BPQCFG.BIN (read by the PMS on start-up).
  1905.  
  1906. There is no need to specify any TNCPORT's for Host Mode operation, and you do
  1907. not need to load the BPQHTNC2 driver.
  1908.  
  1909. -------------------------------------------------------------------------------
  1910. Automatically changing the @BBS field on incoming messages.
  1911.  
  1912. The file CONFIG\change.bbs holds a list of @BBS fields to be replaced and the
  1913. revised field.
  1914.  
  1915. i.e.
  1916. ESX #ESSEX              will replace @ESX with @#ESSEX
  1917. GB7NNA GB7ESX           will replace @GB7NNA with @GB7ESX
  1918. GB GBR.EU               will replace @GB with @GBR.EU
  1919.  
  1920.  
  1921. -------------------------------------------------------------------------------
  1922. Message on hold.
  1923.  
  1924. There is a facility to place on hold all incoming messages addressed TO or
  1925. FROM a specific callsign, all messages addressed @ a particular BBS, or all
  1926. messages sent by a particular station regardless of the TO or FROM fields.
  1927.  
  1928. Enter a list of callsign's to be held in the file  CONFIG\hold.lst
  1929. One callsign per line. SSID's are ignored.
  1930.  
  1931. i.e.
  1932. > G9AAA
  1933. < G9AAA
  1934. < G9BBB
  1935. @ GB9XXX
  1936. B GB9ZZZ
  1937.  
  1938. Will hold all messages addressed TO or FROM G9AAA, all messages FROM G9BBB,
  1939. all messages addressed to stations @ GB9XXX, and ALL messages sent by the
  1940. station GB9ZZZ regardless of the TO or FROM fields.
  1941.  
  1942. Messages are flagged as as type H. (PH BH)  Only the SysOp can list or read
  1943. these messages. The SysOp can hold a message manually with the HM command,
  1944. and clear it with the UH command. The LH command will list all held messages.
  1945.  
  1946. -------------------------------------------------------------------------------
  1947. 3rd party message restrictions.
  1948.  
  1949. By default, the PMS will not accept 3rd party messages from anyone but the PMS
  1950. SysOp. Also, a normal user cannot list or read 3rd party messages.
  1951. This complies with the current RA rules.
  1952. (The PMS SysOp can always access ALL messages)
  1953.  
  1954. If you wish to allow 3rd party access to ALL users (NOV?), then set
  1955. THIRDPARTY to 2, in the npfpms.cfg file.
  1956.  
  1957. If you wish to allow limited 3rd party access to a few trusted users, then
  1958. set THIRDPARTY to 1, and set the individual users S and R flags as appropriate.
  1959.  
  1960. From version 2.17, compressed messages forwarded to the PMS are also checked.
  1961. Messages from a FBB type BBS are checked as they are offered, and 3rd party
  1962. messages are rejected before they are sent.
  1963. With NNA type BBS's its not possible to reject the messages before they are
  1964. sent, so they are checked afterwards and any 3rd party messages are changed to
  1965. type Z (the same type as AutoRead messages).
  1966. This prevents any other user seeing the messages on the PMS.
  1967. If you have given the NTSBBS 3rd party access, then all messages are accepted.
  1968.  
  1969. Note:
  1970. If you have arranged for your NTSBBS to forward certain types of bulletins to
  1971. your PMS, then you must give the BBS 3rd party access by setting its S flag,
  1972. and set THIRDPARTY to 1 (or 2)
  1973.  
  1974.  
  1975. By default, the PMS will only forward out messages addressed FROM the SysOp.
  1976. If you wish the PMS to forward 3rd party messages, set FWDLEVEL to 2, in the
  1977. npfpms.cfg file.
  1978.  
  1979. -------------------------------------------------------------------------------
  1980. DOS * commands.
  1981.  
  1982. There is LIMITED support for DOS commands entered at the pms> prompt.
  1983. Commands must be pre-fixed with a * character.  i.e.  *DIR /W
  1984. You should restrict usage to simple DOS commands, and avoid advanced commands
  1985. that may corrupt the memory/environment in use by the PMS.
  1986.  
  1987. Be VERY careful with DOS commands as it is possible to do things that may
  1988. corrupt the PMS code, hang the system, or change files the PMS is using.
  1989.  
  1990. If a DOS command prompts for input, you will NOT see the prompt!
  1991. If the command then looks for keyboard input it will receive a dummy <Enter>
  1992. keystroke, as the keyboard buffer is pre-loaded with a few ASCII 13's.
  1993. The command *TIME (on its own) would, for instance, prompt for the new time and
  1994. expect to read the reply from the keyboard buffer. It will just get a dummy
  1995. <Enter> and the time would not be changed. Entering *TIME 20:15 will execute ok
  1996. as the required input is already there and the time will be changed.
  1997.  
  1998. However, if the DOS command flushes the keyboard buffer prior to looking for
  1999. input (as the DIR command can do, if the listing is a long one) then it will
  2000. just wait for you to press a real key.
  2001.  
  2002. In general, try to avoid using commands that may prompt for input.
  2003. If you get stuck, Ctrl/C or Ctrl/Break will often terminate a DOS command.
  2004.  
  2005. Please note that whilst an external DOS command is executing, *ALL* the PMS
  2006. windows are frozen. If you use a DOS command that takes a long time to execute,
  2007. or waits for keyboard input, the PMS will be prevented from functioning.
  2008.  
  2009.  
  2010. Once a hour, on the hour, the PMS will call an external batch file. This must
  2011. be in the \PMS\CONFIG directory, and called 'external.bat'
  2012. The batch file can contain any commands normally valid in a batch file, and
  2013. can run EXE or COM files and/or call other batch files. Bear in mind that
  2014. while the file is executing the PMS multi-tasking is frozen, so only run
  2015. quick programs that DO NOT pause and wait for keyboard input!
  2016.  
  2017.  
  2018. -------------------------------------------------------------------------------
  2019. Password protection for users and forwarding sessions.
  2020.  
  2021. The pms supports NNA style password protection for both normal users and for
  2022. PMS<>BBS forwarding sessions. To enable the latter, include a V in the pms SID.
  2023.  
  2024. If a user is allowed Remote SysOp access (A flag set), then SysOp status is
  2025. granted automatically when the PMS receives a valid password.
  2026.  
  2027. Before a user can have password facilities he must first be issued with a
  2028. password matrix like the one below. Each users matrix will be different.
  2029. A password matrix can be generated using the external program PASSWORD.EXE,
  2030. entering the command as:  PASSWORD <callsign>
  2031. This will create a matrix for the specified callsign called xxxxxx.mat
  2032. where xxxxxx is the callsign. This matrix file should then be placed in the PMS
  2033. CONFIG directory, and a copy given to the user.
  2034.  
  2035. Example matrix.
  2036.                   0 1 2 3 4 5 6 7
  2037.                         
  2038.               0   A b F $ 7 : j u
  2039.               1   1 H J & : F S H
  2040.               2   H F R T & 5 4 c
  2041.               3   b f $ S ! J N B
  2042.               4   J k y f % 5 2 0
  2043.               5   + G D 3 $ y f 5
  2044.               6   = g h E x v \ j
  2045.               7   R p * X ; Y C d
  2046.  
  2047. The matrix is numbered 0 - 7 down (the first of the double numbers) and 0 - 7
  2048. across (the second of the double numbers).
  2049.  
  2050. The user logs onto the PMS in the normal way where they can read mail, download
  2051. files etc. However, before they can SEND or KILL a message they will have to
  2052. enter a @ character at the prompt and wait. The PMS will return 3 pairs of
  2053. numbers.
  2054.  
  2055. They must then check their personal password matrix and enter the correct
  2056. characters without spaces. The password is case sensitive so it must be entered
  2057. exactly as it's laid out in the matrix.
  2058.  
  2059. In the above example matrix, if the PMS sent 21 54 27 the user would enter F$c
  2060.  
  2061. The first pair of numbers is 21   -  2 down, 1 across  = F
  2062. The second pair of numbers is 54  -  5 down, 4 across  = $
  2063. The third pair of numbers is 27   -  2 down, 7 across  = c 
  2064.  
  2065. There must be no spaces and upper and lower case letters must be entered just
  2066. as they are in the matrix.
  2067.  
  2068. No acknowledgement is given to say if the password was entered correctly or not.
  2069. Incorrect replies will be ignored so they can send @ and answer as many times
  2070. as they like. This adds further security to the password.
  2071.  
  2072. If the password has not been correctly entered, the user will receive the
  2073. message "This message will be held" if they try to send a message. If this
  2074. happens they can enter * to cancel the message and follow the above
  2075. instructions again (or carry on and have the message held).
  2076.  
  2077.  
  2078. For automatic forwarding sessions both the PMS and the BBS you are forwarding
  2079. to/from must have the same matrix. If both stations have a V in the SID them
  2080. the password is sent automatically. An incorrect password or a missing matrix
  2081. file will result in a disconnect! If you wish to use your BBS's alias, rather
  2082. than its real callsign (i.e. xxxBBS rather than GB7xxx) then you will need a
  2083. duplicate matrix for the alias. (Just copy the matrix GB7xxx.MAT to xxxBBS.MAT)
  2084.  
  2085.  
  2086. The password protection operates as follows:-
  2087. Assuming you always have a V in your pms SID...
  2088.  
  2089. Manual incoming connections.
  2090. ----------------------------
  2091. 1.  A normal user connects, for whom you DON'T have a password matrix stored:
  2092.     No password matrix means password protection is not used.
  2093.     The @ command has no effect. It is just ignored.
  2094.  
  2095. 2.  A normal user connects, for whom you DO have a password matrix stored:
  2096.     Valid password matrix means password protection is used.
  2097.     If the user sends a valid password (with the @ command), then the user can
  2098.     send messages normally, otherwise any messages sent are held for the
  2099.     SysOp's attention. An incorrect password response is simply ignored.
  2100.  
  2101.  
  2102. Automatic incoming connections.
  2103. -------------------------------
  2104. 1.  A bbs user connects, for whom you DON'T have a password matrix stored:
  2105.     The bbs user sends his SID [..-BFHLM$]  (No V)
  2106.     No V in the incoming SID means no request for a password is made.
  2107.     Normal forwarding takes place.
  2108.  
  2109. 2.  A bbs user connects, for whom you DON'T have a password matrix stored:
  2110.     The bbs user sends his SID [..-BFHLMV$]  (with a V)
  2111.     A V in the incoming SID, with no valid password matrix for the user, means
  2112.     the user is immediately disconnected.
  2113.  
  2114. 3.  A bbs user connects, for whom you DO have a password matrix stored:
  2115.     The bbs user sends his SID  [..-BFHLM$]    (No V)
  2116.     No V in the incoming SID means no request for a password is made.
  2117.     Normal forwarding takes place, but the valid password matrix means that any
  2118.     incoming messages are held for SysOp's attention.
  2119.  
  2120. 4.  A bbs user connects, for whom you DO have a password matrix stored:
  2121.     The bbs user sends his SID  [..-BFHLMV$]   (With a V)
  2122.     A V in the incoming SID causes a password to be requested automatically.
  2123.     If a valid password is received, the user can forward messages normally.
  2124.     If a invalid password is received then the user is disconnected.
  2125.  
  2126.  
  2127. A normal user is a user who does not send a SID when connecting.
  2128. A bbs user is a user using PMS/BBS software that sends a SID [....] when it
  2129. connects to another station in automatic mode.
  2130.  
  2131. The password system also operates when a user tries to KILL messages.
  2132.  
  2133. So, if a pirate used the callsign of someone who had arranged for a password at
  2134. the BBS/PMS, the best the pirate could achieve is to send a message that was
  2135. placed on hold, and would not be forwarded on anywhere until the SysOp
  2136. released it. If the contents were dubious then the SysOp would contact the
  2137. supposed sender first, to verify if the message was genuine.
  2138.  
  2139. To disable the automatic BBS password verification, remove the V from the
  2140. PMS's SID and remove the appropriate password matrix file.
  2141. To disable a normal users password verification, remove the users password
  2142. matrix file.
  2143.  
  2144. Remember, a matrix is created at random, so if you delete a users matrix, and
  2145. then generate a matrix for the user again, the new matrix will be different
  2146. from the old one. You would then need to send the new matrix to the user.
  2147. If you only wish to remove a matrix file temporarily, just rename xxxxx.MAT to,
  2148. say, xxxxx.OLD  You can then re-instate it easily, without having to generate a
  2149. new matrix.
  2150.  
  2151. ------------------------------------------------------------------------------
  2152. Manual password exchange.
  2153.  
  2154. This is initiated by pressing SHIFT-F1 (FBB) or ALT-F1 (NNA). It is intended
  2155. for use when you have connected manually (i.e. in terminal mode) to your local
  2156. BBS, and then want to exchange passwords.
  2157. This has been a bit troublesome, and seems to work with some BBS's and not 
  2158. others.
  2159.  
  2160. Note:
  2161. Manual password will NOT operate correctly if you manually connect to a
  2162. second node (your own node being the first) and then issue a C GB7xxx command
  2163. from the second node. In this case, when the PMS interrogates your node to
  2164. get the callsign of the station its connected to, the node will return the
  2165. callsign of the 2nd node, and not the callsign of the destination BBS.
  2166.  
  2167. i.e.
  2168. Press F10 (to enter terminal mode)
  2169. C G1NNA   (a node)
  2170.  (wait for node to return 'Connected to NNA:G1NNA')
  2171. C GB7ESX
  2172.  (wait for 'Connected to GB7ESX')
  2173. Press Alt-F1 to exchange passwords
  2174.  
  2175. This will FAIL, as when the PMS interrogates the node to get the callsign
  2176. of the station its connected to, it will return G1NNA, and not GB7ESX. The PMS
  2177. will then attempt to load a password matrix for G1NNA rather than GB7ESX.
  2178.  
  2179. Press F10 (to enter terminal mode)
  2180. C GB7ESX
  2181.  (wait for 'Connected to GB7ESX')
  2182. Press Alt-F1 to exchange passwords
  2183.  
  2184. This will work, even if the route to GB7ESX is via other nodes, as the
  2185. connections will be at level 4 and, when interrogated, the node will return
  2186. the callsign of GB7ESX.
  2187.  
  2188. ------------------------------------------------------------------------------
  2189. Importing messages from disk file.
  2190.  
  2191. The PMS can import messages from a disk file (plain text, NNA BBS format)
  2192. The command is: IMPORT (drv:)filename.ext
  2193. (Where 'filename.ext' is the name of the file to import).
  2194. Messages are read from the file as if they were being forwarded to the PMS. The
  2195. BID's checking works as normal, so the PMS will not import duplicate messages.
  2196.  
  2197.  
  2198. Exporting messages to a disk file.
  2199.  
  2200. Exporting messages to a file is an extension of the forwarding system.
  2201. EXPORT is a special callsign which is used to create the export file.
  2202. To manually create an export file, use FD EXPORT (options)  The options are the
  2203. same as those normally used with the FD command. The forwarded messages are
  2204. written to a file call \PMS\export.bbs
  2205. This file can then be copied to a floppy disk with:  *COPY EXPORT.BBS A:
  2206.  
  2207. An export file can be created automatically by including an entry in the
  2208. fwdfile.lst using the special callsign EXPORT (options) i.e.
  2209. EXPORT @GB7ESX >ALL
  2210. (For a list of the available options, see the FD command).
  2211.  
  2212. Normally, once a message has been exported to the export file it is marked as
  2213. such, and will not be exported again. You can force the PMS to export messages
  2214. a second time by placing a /D at the end of the EXPORT command. That will
  2215. inhibit the duplicate checking.
  2216.  
  2217. ------------------------------------------------------------------------------
  2218. Deleting messages locked by another channel.
  2219.  
  2220. If the PMS code aborts while a message is being sent, you may end up with a
  2221. zero length message which shows in the listings something like:
  2222. Msg#  TS  Size  Date   (etc...)
  2223. 1234  Cn     0  28-Jul (etc...)
  2224.  
  2225. (The Cn indicates the message was coming from channel n)
  2226. Attempting to delete the message with the DL command may produce a response
  2227. like 'Locked by another channel?'
  2228.  
  2229. To delete the message, first use the Mark Normal command.
  2230. Assuming message number 1234, type:
  2231. MN 1234
  2232. Then you can delete it as normal.
  2233.  
  2234. WARNING:
  2235. Only use this method to delete crashed messages.
  2236. DO NOT use it on a message that is actually being entered on another channel!
  2237.  
  2238. ------------------------------------------------------------------------------
  2239. Automatic connection to other nodes. (When forwarding etc.)
  2240.  
  2241. Different types of nodes can produce a variety of connect text. Net-Rom & BPQ
  2242. nodes, when connected to at Level 4, using the real callsign of the node,
  2243. normally just send 'Connected to xxxxx' or 'Failure with xxxxx' This is the
  2244. normal type of reply the PMS expects, to determine if the connection has been
  2245. successful or not. However, if connections are made at level 2, using the 
  2246. node's alias, or the node is a KA Node, then the text can be several lines
  2247. long, and quite varied!
  2248.  
  2249. To allow for this you can specify text strings (in the npfpms.cfg file) for
  2250. determining if a connection to a node has succeeded or failed, with the
  2251. commands:  NODECONN <text>  and  NODEFAIL <text>
  2252. See the settings in the sample npfpms.cfg file.
  2253.  
  2254. When the PMS connects to a node, it will check all the text strings specified,
  2255. looking for a match within the nodes reply text, to determine if the connection
  2256. was successful or not. Any node reply text not containing any of the specified
  2257. text strings will be ignored.
  2258.  
  2259. e.g. If you set:
  2260. NODEFAIL  FAILURE WITH
  2261. NODEFAIL  BUSY FROM
  2262. NODECONN  CONNECTED TO
  2263. NODECONN  LINK MADE
  2264.  
  2265. Then, if the PMS receives any text from the node containing 'Failure with' or
  2266. 'Busy from' it will assume the connect failed. If is sees any text containing
  2267. 'Connected to' or 'Link made' it will assume the connection succeeded.
  2268.  
  2269. You can specify up to twenty NODECONN strings, and up to twenty NODEFAIL
  2270. strings. Any more will be ignored.
  2271.  
  2272. Note: The case of the received text is not important. Lower case text is
  2273. converted to upper case.
  2274.  
  2275. ------------------------------------------------------------------------------
  2276. Use of a Virtual Disk (RAM disk).
  2277.  
  2278. The PMS can make use of a virtual disk (or a different hard disk) for its
  2279. temporary files. Using a ram disk will speed up bulk forwarding compression
  2280. and de-compression, and other operations that create temporary files.
  2281. You specify the virtual disk using the TEMPDRIVE command in the npfpms.cfg file
  2282. as TEMPDRIVE drv:(\path)
  2283. i.e.
  2284.     TEMPDRIVE  E:\          To use the root directory of drive E
  2285. or
  2286.     TEMPDRIVE  G:\TEMP\     To use the sub-directory \TEMP of drive G
  2287.  
  2288. The virtual drive must exist. If you specify a single sub-directory that does
  2289. not exist, the PMS will attempt to create it. The PMS will not attempt to
  2290. create multiple sub-directories.
  2291.  
  2292. To create a 500K virtual disk in extended memory, insert an entry into your
  2293. config.sys file something like:
  2294. DEVICE=C:\DOS\VDISK.SYS 500 /E
  2295. The exact syntax may vary depending on your OS.
  2296.  
  2297. ------------------------------------------------------------------------------
  2298. Files areas.
  2299.  
  2300. The default files area \PMS\FILES\ must contain the USER.DOC file.
  2301. You may also place any files you wish to make available for downloading in this
  2302. directory. The files sub-directories may also contain further sub-directories.
  2303.  
  2304. User uploaded files go into the FILES.ULD sub-directory, and are not available
  2305. to other users until they are transferred into a download directory by the
  2306. SysOp. When a file is uploaded, the system creates a .dsc file in the upload
  2307. directory, which contains information on the uploaded file.
  2308. DO NOT ALTER THESE .DSC FILES!
  2309.  
  2310. You can specify alternative areas for the archive and upload areas, with the
  2311. config commands:
  2312. ARCHIVE <path>      For archived messages.
  2313. UPLOAD <path>       For the user upload files area. Should be different to any
  2314.                     download files area.
  2315. You can specify additional files download areas with the config commands:
  2316. FILESDIR <path>
  2317. The default files area (\PMS\FILES\) is included automatically. Do not include
  2318. it in a FILESDIR command. Do not move or erase the file USER.DOC from the
  2319. default files directory!
  2320. <path> should be the FULL path to the directory, including the drive if
  2321. appropriate.  e.g. FILESDIR C:\PUBLIC\FILES\
  2322. A specified drive must exist. If you specify a single sub-directory that does
  2323. not exist, the PMS will attempt to create it. The PMS will not attempt to
  2324. create multiple sub-directories.
  2325.  
  2326. Files download areas will appear to the user as pseudo drives. To download a
  2327. file from a specific area, include the pseudo drive number in the filename.
  2328. i.e.  1:\MODS\tncmod.txt
  2329.  
  2330. The WN (WhatNew) command does not scan sub-directories of READ-ONLY media
  2331. (like CD Roms) as, given the number of files likely to be on a CD Rom, this can
  2332. take a considerable time and generate huge amounts of text.
  2333.  
  2334. ------------------------------------------------------------------------------
  2335. Yapp protocol enhancements.
  2336.  
  2337. The PMS supports the YappC checksum protocol (as used by FBB).
  2338.  
  2339. Crash recovery (Resume download)
  2340. If a users binary download fails part way through, the user can resume a file
  2341. transfer from the point of failure, rather than having to download the whole
  2342. file again. The user must also be running a version of Yapp that supports crash
  2343. recovery!
  2344.  
  2345. Crash recovery also operates when the SysOp is using the PMS in terminal mode
  2346. to download a binary file from another system that supports crash recovery.
  2347.  
  2348. *** Warning:  When the PMS prompts for a local filename for the file, if you
  2349. give the name of a file that already exists then the system will assume that
  2350. crash recovery is required, and the existing file will be appended to!
  2351. If the existing file was not an aborted part of the file you are currently
  2352. downloading, the resultant file will be invalid.
  2353.  
  2354. If the remote system does not support crash recovery, then it will abort the
  2355. transfer. In this case you will need to delete the existing (incomplete) file,
  2356. or specify a different local filename, and try again for a normal download.
  2357.  
  2358. ------------------------------------------------------------------------------
  2359. Binary compressed file transfers.
  2360.  
  2361. The PMS contains an experimental compressed binary file Upload\Download , as an
  2362. alternative to Ascii and Yapp transfers. The compression type is LZH-RLL (the
  2363. same as used for compressed mail forwarding).
  2364. User commands BU <fsp> and BD <fsp> (Binary Upload/Download) have been added.
  2365. The function keys F8 and Shift-F8 can be used for Binary Upload/Download whilst
  2366. in Terminal mode. Transferring Ascii files as compressed data can reduce the
  2367. transfer size considerably. Zipped files may not show much reduction in size,
  2368. but will not incur the overhead associated with Yapp protocol.
  2369. At present, this will only work with another NPFPMS system, and the protocol
  2370. may well be revised as things develop. (i.e. to make it compatible with other
  2371. possible systems).
  2372.  
  2373. Remember, this is just experimental and may well be subject to changes.
  2374.  
  2375.  
  2376. ===============================================================================
  2377. EXTERNAL SUPPORT PROGRAMS
  2378. =========================
  2379.  
  2380. Re-numbering the PMS message base.
  2381. ----------------------------------
  2382. RENUMBER.EXE is an external program which will renumber the all PMS messages to
  2383. 101 upwards. It should be run from the PMS directory. The PMS *must* be closed
  2384. down before using this program!
  2385. You can specify a different starting number if required. i.e. RENUMBER 200
  2386.  
  2387. Don't re-number just for the sake of it. Remember that message BID's are
  2388. generated from the message numbers, and if you re-number too often then the PMS
  2389. may produce a duplicate BID, which may then be refused if you attempt to
  2390. forward it to a BBS that has already received a message with the same BID.
  2391. Re-numbering should only be required if the message numbers approach the
  2392. highest valid number (99999) or a computer crash has affected the numbering.
  2393.  
  2394.  
  2395. Pruning the message index file.
  2396. -------------------------------
  2397. PRUNEIDX.EXE is an external program that will prune out all deleted messages
  2398. from the message index file (SYS\msgindex.idx). It must be run from the PMS
  2399. directory. It should not normally be necessary to use this program, as the PMS
  2400. internal housekeeping will prune the index file automatically. It can, however,
  2401. be used if required.
  2402.  
  2403.  
  2404. Deleting a user from the user file.
  2405. -----------------------------------
  2406. DELUSER.EXE is an external program that can be used to delete a user from the
  2407. user file (namelog.sys). It must be run from the main PMS directory.
  2408. Typing:  DELUSER G9AAA  will list the entry for G9AAA, and then ask for
  2409. confirmation to to delete the entry. The original namelog.sys file is copied
  2410. to a backup file called namelog.old. Subsequent use of DELUSER will overwrite
  2411. any previous backup file.
  2412.  
  2413.  
  2414. Creating a user password matrix file.
  2415. -------------------------------------
  2416. PASSWORD.EXE is an external program which creates a password matrix for a
  2417. given callsign. Its operation is described in the section about passwords.
  2418.  
  2419. ------------------------------------------------------------------------------
  2420. Memory suggestions:
  2421. A few people have reported problems with running out of memory. If the PMS 
  2422. stops with an ERROR 7 or ERROR 242, or (if DV or QEMM are used) DESQview
  2423. terminates the pms window, or QEMM386 reports an EXCEPTION 13 error, then its
  2424. likely the PMS is running out of memory.
  2425. Try reducing the size of the review buffer, REVIEWSIZE to about 50
  2426. Also try reducing the TEXTBUFFERSIZE buffer to as small as you can manage with,
  2427. bearing in mind it must be big enough to load the AutoList/Read files. (100 ?)
  2428. Do not let the AutoList file grow too large. The bigger it gets, the more
  2429. memory it takes to process it.
  2430. Try reducing the size of the JALISTSIZE buffer to, say, 50
  2431. Do not configure the PMS for more channels than you really need. Four (0-3)
  2432. should be enough. Each channel takes up memory.
  2433. Restrict the use the editor and review command to one or two windows only.
  2434.  
  2435. On a 386 it should be possible to load BPQ into high memory (above 640k). This
  2436. saves 100K odd base memory. If you are using DESQview/QEMM386 make sure you get
  2437. as big a DV window as possible for the PMS to run in.
  2438.  
  2439.  
  2440. ===============================================================================
  2441. PROBLEMS.
  2442.  
  2443. File corruption.
  2444. ----------------
  2445. I couple of users have reported problems with file corruption (cross linked
  2446. clusters, invalid directory entries etc.)
  2447. In one case, the problem seemed to be due to a disk compression program. Some
  2448. disk compression drivers are know to be less than perfect. The company
  2449. supplying the driver denied that there had ever been any problems, and then
  2450. produced an update to fix the bugs they said did not exist!  Hmmm...
  2451.  
  2452. In another case a disk caching program was being used, as part of a WINDOWS
  2453. set-up. Removing the caching program cured all the file corruption problems!
  2454.  
  2455. These problems may have been due to early versions of the programs involved.
  2456. There again.....
  2457.  
  2458. Two other reported problems of erratic behaviour and/or corrupted files were
  2459. found to be caused by a VIRUS on the users computer.
  2460. I GUARANTEE that the code that *I* send out is virus free, but if you obtain
  2461. the pms code from any other source then take the normal precautions...
  2462.  
  2463. Mono systems.
  2464. -------------
  2465. If you have a problem running the PMS on a mono system (loss of inverted text,
  2466. no flashing text, unwanted underscored text), try setting VDU to MONOVGA and
  2467. pressing Ctrl-F7 to kill the colour.
  2468.  
  2469.  
  2470. Editor.
  2471. -------
  2472. There is a know bug in the editor, where it appears to loose a line of text.
  2473. The scrolling appears to get out of sync. This only effects the screen
  2474. display, and not the actual editor buffer. No text is lost.
  2475.  
  2476. Pressing Page-Up Page-Down normally restores the screen.
  2477. I am trying to find the reason for this odd effect.
  2478.  
  2479.  
  2480.  
  2481. ==============================================================================
  2482. Registering the PMS.
  2483.  
  2484. If you decide to use the PMS code on a regular basis, and have not previously
  2485. registered, then the requested registration fee is 15.00 pounds.
  2486. You must state the callsign to be used with the PMS, and the full version
  2487. number of the version you are registering (i.e. G9ABC V2.31a). Also I would
  2488. appreciate knowing where you obtained the program from (optional, just for my
  2489. own information). You will then receive a registration number which will remove
  2490. the  ** Un-registered copy of NPFPMS **  line from outgoing messages, and you
  2491. will be added to the registered users list.
  2492.  
  2493. Cheques made out to 'E' Harrison please, not 'T' (Ted is only a nickname!)
  2494.  
  2495. IF YOU WANT SUPPORT, THEN REGISTER!
  2496.  
  2497. Registrations received will be used to help with the cost of running my 24hr
  2498. multi-port node, which is used for forwarding BBS traffic and gives local
  2499. users access to the network. Your registration will be making a direct
  2500. contribution to packet radio.
  2501.  
  2502. Please note, the registration number only works with the callsign stated. If
  2503. the PMS is used with a different callsign, then the registration number has no
  2504. effect. Another station cannot use your registration number!
  2505.  
  2506. A registration form is included on the disk called REGISTER.FRM
  2507.  
  2508. ==============================================================================
  2509.  
  2510. Special thanks to Beta-testers G6FBF, G6NHK, G8DZH and others, for their ideas
  2511. and suggestions.
  2512.  
  2513.  
  2514. Finally.......
  2515.  
  2516. PLEASE report any bugs or other problems you come across. I can't check
  2517. everything under all conditions, and welcome ANY feedback from users.
  2518. A lot of improvements have been as a result of suggestions and/or bug reports.
  2519. Thank you...
  2520.  
  2521. 73 Ted.
  2522. NTS       G8NPF@GB7ESX
  2523. AMPRNet   g8npf@gb7eip.ampr.org  44.131.185.66
  2524. Internet  tedharrison@cix.compulink.co.uk
  2525.  
  2526.